PATH='$PATH:/Path/to/bin'が私のPATHを上書きするのはなぜですか?

PATH='$PATH:/Path/to/bin'が私のPATHを上書きするのはなぜですか?

コマンドラインからディレクトリをエクスポートせずにPATHに追加します。

$ PATH='$PATH:/home/user/anaconda3/bin'

何らかの理由でPATH環境変数を上書きしましたが、なぜこれが起こるのかわかりません。上記のPATHは、まだコロンで区切られたディレクトリのリストです。それでは、問題は何ですか?通常、PATHに新しいディレクトリを追加しましたが、今回はディレクトリの追加をテストしましたが、予期しない結果が出ました。

最も簡単なコマンドを試すたびに、ls次のエラーが発生します(私は期待)、私が入力したコマンドをインストールするように求められます。

bash: sed: command not found...

また、実際にPATHをエクスポートするわけではないので、後続のコマンドは上記のPATH変数の環境を継承してはいけません。では、なぜこれが起こるのでしょうか?

私は問題を解決するために新しいターミナルウィンドウを開くことができることを知っていますが、なぜこれが起こるのか知りたいのですが。

ベストアンサー1

一重引用符はパラメータ拡張を抑制します。

$ foo=42
$ echo '$foo' "$foo"
$foo 42

おすすめ記事