ZSHは$ PATHを読みません。

ZSHは$ PATHを読みません。

私は最近私のプライベートスクリプトを私の変数$HOMEに含めることにしました。$PATHただし、これを実行しようとすると、ZSHは「コマンドが見つかりません」と応答します。次の行は私が追加したものです。.xprofile

PATH="$PATH:~/.local/share/";export PATH

いくつかのスクリプトがありますが、~/.local/share/ZSHでは実行できませんが、bashではうまく動作します。上記のライブを私のライブに追加しようとしましたが、うまくいきませ.zshrcんでした。

ベストアンサー1

~変数ではなく、変数のように動作しません。

~シェルは通常引用しても拡張されません。シェルの特殊なチルダ文字の処理に依存せずに、ホームディレクトリへの正しいパスを取得するために、すべてのシェルで$HOME置換を使用できます(対話式シェルで主に使用されるショートカット)。~

$HOME するこれは、変数が機能すると予想されるとおりに機能します。つまり、二重引用符で囲むと、ホームディレクトリパスに展開されます。

また、その可能性が低いことも参考にしてくださいPATHいいえすでに環境変数です。したがって、エクスポートする必要はありません。

zshシェルで~/.local/shareコマンド検索パスの末尾に追加するには、次のこともできます。

path+=~/.local/share

または

path+=$HOME/.local/share

配列変数pathスカラー変数に追加されますPATH。つまり、上記のように配列を更新すると、追加された要素pathが値の末尾に追加されます$PATH

おすすめ記事