在我的.bashrc文件我有以下兩條命令:bash的hash命令不會影響全球環境
hash ih kl klt
hash
當.bashrc文件的來源,如預期的輸出:
hits command
0 /userdata/cfor/utils/worklib/kl
0 /userdata/cfor/utils/prodlib/ih
0 /opt/local/tools/bin/vi
但後來當我在命令提示符下輸入「hash」時,它告訴我哈希表是空的。就好像散列指令的效果只在獲取.bashrc文件時才存在。我在.bashrc文件中放入了「echo $$」指令,然後在採購完成後檢查$$的值,它們是相同的。爲什麼在.bashrc文件完成源代碼之後散列命令的效果不會持續?
謝謝!
你的'.bashrc'還有什麼?你在修改PATH嗎? – pneumatics
是的,但只在.bashrc文件的頂部。散列指令只有在所有路徑編輯完成後纔會出現。哈希命令後面有函數定義,但它們與哈希命令所處理的命令無關。 – rbaumann