2017年10月31日 星期二

Bash hash 執行檔路徑的快取

bash 會自動將透過 $PATH 找到的執行檔完整路徑存在 hash 表裡,下次使用就不用再找 $PATH 而直接採用 hash 表紀錄的完整路徑。

內建指令 hash

hash [-lr] [-p filename] [-dt] [name]
  • hashhast -d:印出 hash 表中所有記錄的完整路徑及使用次數
  • hash -d name:刪除 hash 表中 name 的紀錄 (可有多個 name)
  • hash -r:刪除 hash 表中所有的記錄
  • hosh -t name:印出 hash 表中 name 的完整路徑 (可有多個 name)
  • hash -p filename name:為 name 在 hash 表建立使用 filename 作為完整的檔名。可用來非標準路徑的執行檔
  • hash -l:印出 hash 表中所有的記錄的完整路徑,採用可輸入格式,可用來事先建立 hash 表用
 參考:
  • man bash
  • 內建指令 shopt 選項 checkhash
  • 內建指令 type
  • restricted shell
  • Shell 變數 BASH_CMDS

沒有留言:

張貼留言

SIP header Via

所有 SIP 訊息 都要有 Via,縮寫 v。一開始的 UAC 和後續途經的每個 proxy 都會疊加一個 Via 放傳送的位址,依序作為回應的路徑。 格式 sent-protocol sent-by [ ;branch= branch ][ ; 參數 ...] s...