echo $PATHは$PATHを表示します

echo $PATHは$PATHを表示します

私のシステムの 1 つで、奇妙な状況が発生しています。envどのマシンで実行しても、結果は次のようになります。

[sup@vviesup07 ~ ]$ env |grep PATH
PATH=/usr/java/latest/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/sup/.local/bin:/home/sup/bin:/home/sup/.local/bin:/home/sup/bin
[sup@vviesup07 ~ ]$

しかし、1 台のマシンに 1 人のユーザーがいる場合、結果は次のようになります。

[aut@vviesup09 ~ ]$ env |grep PATH
PATH=.:/usr/lib/oracle/12.2/client64/bin:$PATH
[aut@vviesup09 ~ ]$

ご覧のとおり、PATH は評価されません。変数を評価する代わりに、単に $PATH が表示されます。ここで何が間違っているのでしょうか? エラーはどこで確認できますか?

答え1

更新用の一部のコマンドで、二重引用符や引用符なしの代わりにPATH一重引用符が使用されているようです。'"

PATH='.:/usr/lib/oracle/12.2/client64/bin:$PATH'

二重引用符に置き換えます:

PATH=".:/usr/lib/oracle/12.2/client64/bin:$PATH"

探すには、この質問と回答についてPATH

関連情報