「適切なシェルパラメータの生成」で指定されたディレクトリハッシュテーブルを変更するには?

「適切なシェルパラメータの生成」で指定されたディレクトリハッシュテーブルを変更するには?

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

おすすめ記事