Bash
為什麼 Whereis 不能顯示命令路徑,而哪個工作正常?
我創建了一個可執行的 bash shell 腳本文件命令。我將自定義命令的目錄路徑添加到
$PATH
變數中,但未whereis
顯示命令路徑但which
顯示正確。我正在使用 bash shellubuntu 14.04
添加
.local/bin
到$PATH
自定義命令所在的位置.bashrc
~$ echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/rahul/.local/bin
自定義命令文件存在並且帶有可執行標誌
~$ ls -l .local/bin/ total 8 -rwxr-xr-x 1 rahul employee 79 Dec 13 15:47 customCC
whereis
找不到命令~$ whereis customCC customCC:
which
能夠找到命令。~$ which customCC /home/rahul/.local/bin/customCC
Bash customCC腳本程式碼
#!/bin/bash cd /home/rahul/sample
whereis
除非另有說明,否則搜尋硬編碼路徑,同時which
在目前環境中搜尋 PATH 變數。請閱讀這兩個命令的手冊。您可以使用
whereis
以下語法:whereis -B $HOME/.local/bin -f customCC