web-dev-qa-db-ja.com

CentOS6.5で$ PATHをリセットする方法

サーバーを再起動した後、SSHでコマンドを実行できなくなりました。

コマンドは次のようなものを返します:-bash: ls: command not found

$ PATHが何らかの形で変更されている必要があることに気付きました。/bin/lsを実行すると、正常に機能するようです。

echo $PATHは以下を返します。

/usr/local/sbin:/usr/sbin:/sbin:$PATH:/opt/jdk1.8.0_45/bin:/opt/jdk1.8.0_45/jre/bin:/root/bin

ここではJavaが原因だと思いますが、$ PATH変数をリセットするにはどうすればよいですか?

2
Jorg Ancrath

次のコマンドを実行して、/ binまたは必要なディレクトリをPATHに追加できます。

export PATH="$PATH:/bin"

次に、その行を.profileまたは.bashrc(bashを使用している場合)に追加して、ログインするたびにディレクトリがパスに含まれていることを確認できます。

2
Peschke

PATHを見ると、起動スクリプトのどこかで、アプリケーションが自分自身をPATHに追加しようとしているようですが、正しく実行されていません。その理由は、PATHに文字列$PATHが含まれているためです。これは実際のパスに展開されているはずですが、文字列$PATHとして含まれています。

Javaパスがパスの$PATHに続くという事実は、それを実際に主な容疑者にします。次のようなことをする可能性があります。

PATH='$PATH:/opt/jdk1.8.0_45/bin:/opt/jdk1.8.0_45/jre/bin'

の代わりに:

PATH="$PATH:/opt/jdk1.8.0_45/bin:/opt/jdk1.8.0_45/jre/bin"

引用の違いに注意してください。

0
NZD