.zshrc ファイルを編集して構成しました。ZシェルFreeBSDでは、例えばアップデート道システム変数
path+=/usr/local/openjdk12/bin
変更を適用するにはどうすればよいですか?
ログアウトして再度ログインする必要がありますか?ファイルをすぐに実行する方法はありますか?
ベストアンサー1
zshの再起動
Zshの起動.zshrc
時に読んでください。ログアウトして再度ログインする必要はありません。端末を閉じて新しい端末を開き、.zshrc
この新しい端末から新しい情報を入手してください。しかし、これをより簡単にすることができます。 zshに再起動するように指示します。
exec zsh
zshプロンプトでこのコマンドを実行すると、現在のzshインスタンスが同じ端末で実行されている新しいインスタンスに置き換えられます。新しいインスタンスは同じです。環境変数は前作と同じですが、新鮮な感じシェル(エクスポートされていない)変数であり、新しい履歴を開始します(したがって、一般的な設定で他の端末からのコマンドを混在させます)。すべてのバックグラウンドタスクは拒否されます。
もう一度読む.zshrc
zshにrereadを指示することもできます.zshrc
。これには、シェル履歴、シェル変数、およびバックグラウンド操作に関する知識を維持するという利点があります。ただし、何を入れるかに応じて動作することも、.zshrc
動作しない場合もあります。.zshrc
実行コマンドの再読み込みはうまくいかないか、2回実行すると正しく動作しない可能性があります。
. ~/.zshrc
.zshrc
2回実行したい場合は、入れることができるものと入れることができないものをすべて列挙するにはできることが多すぎます。ここはただ一部一般的な問題:
- 変数(
fpath+=(~/.config/zsh)
またはchpwd_functions+=(my_chpwd)
)に追加すると、同じ要素が再び追加されるため、問題が発生したり発生しなくなる可能性があります。 - エイリアスを定義し、コマンドと同じ名前を使用すると、コマンドはエイリアスとして実行されます。たとえば、次のように動作します。
しかし、そうではありません。 2番目にファイルをインポートすると、function foo { … } alias foo='foo --common-option'
foo ()
エイリアスが拡張されるためです。foo () { … } alias foo='foo --common-option'
- 既存のzsh機能にパッチを適用すると、自分のバージョンにパッチを適用して混乱を招く可能性があります。
- 「2 つのキーのバインディングの交換」などの操作を実行すると、2 番目の場合は目的の操作は実行されません。