zsh
私は名前付きディレクトリハッシュテーブルにエントリを追加するために.sを使用することに慣れていますhash -d <name>=<value>
。最近zshbuiltins(1)
マンページを読んだところ、次のような内容が見つかりました(hash
組み込み説明)。
通常、PATH(コマンドハッシュの場合)を変更するか、適切なシェル引数(名前付きディレクトリハッシュの場合)を作成してこれらのテーブルを変更できます。
by creating appropriate shell parameters
このメカニズムがどのように機能するのかわかりません。誰かが私に例を与えることができますか?
ベストアンサー1
これ名前ディレクトリ(ユーザーのホームディレクトリを除く)は変数に格納されたディレクトリで、このディレクトリを使用して~varname
そのディレクトリにアクセスしてからハッシュテーブルにエントリを追加できます。
例:
$ var=/usr/local
$ hash -d
$ echo ~var
/usr/local
$ hash -d
var=/usr/local
$ : ~root
$ hash -d
root=/root
var=/usr/local
(私はこの機能の重要性を自分で理解したことがありません。)
詳細を参照してください(このサイズのマニュアルはinfo zsh 'static named directories'
使用しません)。man