ログインシェルであるZシェルにいることを確認してください。

ログインシェルであるZシェルにいることを確認してください。

~によると文書

.zshenv-fオプションが設定されていない場合は、シェルへのすべての呼び出しからこの情報を取得します。これには、コマンド検索パスを設定するコマンドとその他の重要な環境変数を含める必要があります。.zshenv出力を生成したり、シェルがttyに接続されていると仮定するコマンドを含めないでください。

いいね、いいですね。 sshを介してログインすることはzshを呼び出すと見なされます。しかし、そうではないかもしれませんか?

wayne@arglefraster ~ 
⚘ echo $PATH                                                                                                   10:01:17
/usr/local/heroku/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl
wayne@arglefraster ~ 
⚘ zsh                                                                                                          10:01:20
e%                                                                                                                      
wayne@arglefraster ~ 
⚘ echo $PATH                                                                                                   10:01:24
/usr/local/heroku/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/wayne/.rvm/bin:/home/wayne/.bin:/home/wayne/.local/bin

これらの追加パスビットが私のファイルに追加されます.zshenv

これは正常ですか、それとも私に奇妙なことが起こっていますか? PATH編集を他の場所に移動する必要がありますか?

ベストアンサー1

zshenv実際にはシェルのすべてのインスタンスから読み取られますが、最初、最初。 (または、…)$PATHでリセットできます。zprofile~/.zprofile/etc/zprofile

zshenvsettingsではなく$PATHzprofileログイン時に環境を設定する役割をします。環境変数を設定するとは、セッション内でzshenv単純なzshサブシェルまたはスクリプトを実行するzshと、その変数が削除されることを意味します。

おすすめ記事