Bash
將單個二進製文件添加到 PATH
也許這是一個 WSL 問題,在這種情況下,我不知道該去哪裡問。
我有一個要添加到 path 的二進製文件
~/.scry/bin/scry
。所以我去~/.bashrc
添加export PATH="$HOME/.scry/bin/scry:$PATH"
我不想添加該文件夾的原因是因為
~/.scry/bin
在我的 PATH 中有一些我不想要的其他二進製文件。我這樣做了,然後執行:
~$ . .bashrc
但是當我執行
scry
(二進製文件)時,我得到一個command not found
錯誤。我嘗試重新啟動控制台(Ctrl
+D
)並再次打開它(debian)。但它仍然無法辨識該命令。我不確定如何繼續,請幫助。
這不起作用——來自的路徑
PATH
將被視為要添加到命令的目錄,無論它們是執行檔還是任何其他類型的文件。一個簡單的解決方案是在其他地方創建一個目錄,在那裡創建一個指向二進製文件的符號連結,然後將該目錄添加到
PATH
:mkdir ~/my-bin ln -s ~/.scry/bin/scry ~/my-bin PATH=$PATH:~/my-bin
hash -p "$HOME"/.scry/bin/scry scry
將以上內容添加到您的
.bashrc
文件中將告訴您的互動式 shellscry
位於"$HOME"/.scry/bin/scry
.做類似事情的其他方法包括創建一個別名
alias scry="$HOME"/.scry/bin/scry
或者一個shell函式
scry () { "$HOME"/.scry/bin/scry "$@" }
該
PATH
變數包含一個:
- 分隔的目錄列表,當給出尚未使用的命令時將搜尋這些目錄。因此,將實用程序的路徑名添加到PATH
變數中不會真正做任何事情。