Shell

如何通過“創建適當的 shell 參數”來修改命名目錄雜湊表?

  • November 1, 2022

我習慣於zsh通過使用hash -d <name>=<value>. 最近,我閱讀了zshbuiltins(1)手冊頁,在那裡我發現了以下內容(hash內置的描述):

通常,人們會通過修改自己的 PATH(對於命令雜湊表)或通過創建適當的 shell 參數(對於命名目錄雜湊表)來修改這些表。

我不明白這種by creating appropriate shell parameters機制是如何工作的。有人可以給我一個例子嗎?

命名目錄(除了使用者的主目錄)是您儲存在變數中的目錄,然後您可以使用~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這種尺寸的手冊)。

引用自:https://unix.stackexchange.com/questions/723248