更改了 PATH,现在我收到所有内容的“未找到命令”

Lok*_*ywa 26 linux path amazon-ec2

Amazon Linux 服务器,通过 SSH 连接:

我试图通过在 /etc/environment ( PATH=$PATH:/opt/openoffice4/program) 和 /etc/sysconfig/httpd (export PATH = ${PATH:$PATH:}/opt/openoffice4/program ) 中。

然后我重新启动。

现在,我什么也做不了,甚至ls -l导致-bash: ls: command not found

我该怎么做才能重新获得控制权?

Dav*_*ill 49

我该怎么做才能重新获得控制权?

运行/bin/vi并恢复您所做的更改/etc/environment/etc/sysconfig/httpd


Tom*_*ych 32

您可以在PATH没有编辑器的情况下进行设置。只需在 shell 中输入:

export PATH=/usr/local/bin:/usr/bin:/bin:$HOME/bin
Run Code Online (Sandbox Code Playgroud)

  • 这应该被引用,否则 `$HOME` 将受到通配和分词的影响。IOW,如果 `$HOME` 中有空格(合理)或任何 glob 字符(不太可能),它就会中断。 (4认同)
  • @Kevin 这就是它在严格遵守的实现中的行为方式,但至少 bash 提供了没有这个问题的 `export` 自定义语法规则。(出于其他原因,已经需要自定义语法规则,例如允许`export array=(1 2 3)`。) (2认同)