Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ubuntu echo$PATH在同一帐户上从不同环境登录时不显示所有路径_Ubuntu_Assembla - Fatal编程技术网

Ubuntu echo$PATH在同一帐户上从不同环境登录时不显示所有路径

Ubuntu echo$PATH在同一帐户上从不同环境登录时不显示所有路径,ubuntu,assembla,Ubuntu,Assembla,当我将echo$PATH作为root从两个不同的场景运行到同一台服务器时,我得到了不同的结果 首先,我通过安装kitchen的根目录进行ssh。我打字的时候 $ which kitchen $ usr/local/rvm/gems/ruby-2.1.2/bin/kitchen $ echo $PATH 我可以看到它正确地列在最后 /usr/local/rvm/gems/ruby-2.1.2/bin:/usr/local/rvm/gems/ruby-2.1.2@global/bin:/usr/l

当我将echo$PATH作为root从两个不同的场景运行到同一台服务器时,我得到了不同的结果

首先,我通过安装kitchen的根目录进行ssh。我打字的时候

$ which kitchen
$ usr/local/rvm/gems/ruby-2.1.2/bin/kitchen
$ echo $PATH
我可以看到它正确地列在最后

/usr/local/rvm/gems/ruby-2.1.2/bin:/usr/local/rvm/gems/ruby-2.1.2@global/bin:/usr/local  
/rvm/rubies/ruby-2.1.2/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:    
/bin:/usr/games:/usr/local/games:/usr/local/rvm/bin:
/usr/local/rvm/gems/ruby-2.1.2/bin/kitchen
我正在使用assembla主机运行SSH脚本,并指定root和何时运行

$ which kitchen
$ Process exited with: 1. Reason was:  ()
$ echo $PATH
$ /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:
  /usr/games:/usr/local/games
使用Ubuntu 14.04

我想知道,如果可能的话,如何在从汇编帐户运行时获得与通过终端登录时相同的输出


谢谢,

这很可能是拥有交互式shell和没有交互式shell之间的区别

根据您的设置,将读取不同的环境文件,请查看您的.bashrc或.profile

从bash手册页:

Bash试图确定何时使用其标准输入运行它 连接到网络连接,就像由远程shell守护程序连接一样, 通常是rshd或安全shell守护程序sshd。如果猛击 确定以这种方式运行时,它将读取并执行命令 来自~/.bashrc,如果该文件存在且可读

基本上,运行'grep-r kitchen~/.*来确定哪个文件正在将kitchen添加到PATH变量中,然后您将能够确定在使用非交互式终端进行ssh时是否正在读取该文件

您也可以在运行脚本之前设置路径:

导出路径=/usr/local/rvm/gems/ruby-2.1.2/bin/kitchen:${PATH}


另外,在您的输出中,您的PATH变量似乎有一个换行符,它不应该出现。

谢谢您的帮助,为我指明了一个好的方向。最后,我在脚本开始时放置了source/etc/profile,并开始运行。