ZSH - 冗長パス:ターミナルセッションを再開すると、PATHの末尾に追加されたディレクトリが繰り返されます。

ZSH - 冗長パス:ターミナルセッションを再開すると、PATHの末尾に追加されたディレクトリが繰り返されます。

私は最近、Big SurとZSHシェルを実行しているMACにPIPXをインストールしました。インストール中に、ファイルに以下を追加するように求められます.zshrc

# Created by `pipx` on 2021-03-20 14:22:23
export PATH="$PATH:/Users/xxxx/.local/bin"
eval "$(register-python-argcomplete pipx)"

echoを実行すると、私のPATH変数の末尾に追加された内容が$PATH表示されます。/Users/xxxx/.local/binただし、端末を閉じて新しいセッションを開くときにechoを実行すると、$PATHPATHの末尾に重複した場所が表示されます。:/Users/xxxx/.local/bin:/Users/xxxx/.local/bin

新しいターミナルセッションを開いて閉じてもPATHには何も生成されないようです。 2つの項目だけに残ります。

重複排除を実行しましたが、typeset -U PATH path新しい端末セッションを開くたびに再び重複します。

このようなことが起こらないようにする方法を知っている人はいますか? PATH変数をできるだけきれいに保ちたいです。

ベストアンサー1

今、重複のソースを見つけました。 pipxのインストール中に、.zshrcファイルパスに指定されたディレクトリを追加するように求められます。ただし、.zprofileファイルにエクスポートパスステートメントを自動的に追加するようです。

これで、両方のファイルに保持するか、どちらか一方から削除する値があるかどうかを判断できます。

おすすめ記事