path_helperとzsh

path_helperとzsh

PATHAppleはシェル設定ファイルの最後に、より多くの変数バリアントをプッシュするのではなく、ディレクトリからパスのリストを読み、変数を自動的に拡張できるpath_helperようにバイナリを作成したことを読みました。PATH/etc/paths.d/

また、このファイルはcshとbash(-cおよび-s対応するフラグ)の出力のみを生成します。出力はありませんzsh(zshはbashとある程度互換性がありますが理解しています)。

zshを使用しています。私の/etc/zshenvファイルには次の行が含まれています。

# system-wide environment settings for zsh(1)
if [ -x /usr/libexec/path_helper ]; then
    eval `/usr/libexec/path_helper -s`
fi

端末または新しいタブを開くと、プロセスが完了するのに約0.5秒かかります。 1つのファイルにのみ単一のパス(/usr/X11/bin)があります。完全に削除すると、/etc/zshenvどのくらいのリスクを取る必要がありますか?上記のパスをmyまたはfileに入力すれば.zshrc十分ですか.zshenv

ベストアンサー1

superuser.comで同様の質問をしたことがありますか? 接続ブログ投稿言いました(ほとんどの記事全体を引用しています)。

/usr/libexec/path_helperMac OS Xでは、ログインシェルを作成するたびにこれを実行しますが、これは非常に遅いです。 (特に私はSlowを考えています[[ "$NEWPATH" = *(*:)${p}*(:*) ]]。)ターミナルウィンドウが開くのに約4秒かかります。 /etc/paths.d からファイルを削除し、その内容を .bash_profile の $PATH に直接配置すると、端末ウィンドウがすぐに読み込まれます。

ディスカッションにはリンクも含まれています。Perlで書かれた置換、github.com/mgprot/path_helper(どのくらい速いのかわかりません。)

編集する:上記のブログ投稿のコメントを見ると -パッチpath_helperこれは問題を解決する別の方法でなければなりません。

おすすめ記事