[英]Path, /usr/bin/ and /usr/local/bin/
我使用gem install watchr
。 它安裝在/usr/bin/watchr
$ which watchr
/usr/bin/watchr
但是,當我嘗試調用它$ watchr -v
時,系統找不到它。
$ watchr -v
-bash: /usr/local/bin/watchr: No such file or directory
我認為這與我的機器上路徑的設置方式有關。 我的問題:
/usr/bin/
與/usr/local/bin/
?$ /usr/bin/watchr -e 'watch(./hello.txt) ...'
時,我們是在當前目錄還是在/usr/bin/即同一目錄中查看hello.txt作為觀察者?您的命令的路徑被緩存了一個錯誤的值。 嘗試更新 bash 為路徑存儲的緩存目錄。
hash -d watchr
我在這里找到了答案, 其中 ctags 顯示 /usr/local/bin/ctags,但是當我運行 ctags 時,它運行 /usr/bin/ctags。 這怎么可能?
/usr/local/bin/watchr 是損壞的符號鏈接嗎? 這將使which watchr
不包含它,但watchr
會打印此錯誤:
-bash: /usr/local/bin/watchr: No such file or directory
我不知道為什么 OS X 附帶的gem
會在 /usr/bin/ 中安裝程序,但通常 /usr/bin/ 是用於預安裝程序的,包管理器使用 /opt/local/bin/ 或 / 之類的東西usr/本地/bin/。
我在路徑上的其他文件夾之前也有 /usr/local/bin/,並且我將大多數手動安裝或編譯的程序放在 /usr/local/bin/ 中。 我曾經有一個單獨的 ~/bin/ 文件夾,但是使用find /usr/local/bin ! -lname '../Cellar/*'
find /usr/local/bin ! -lname '../Cellar/*'
。
一般有關 /usr/local/bin/ 的相關問題:
在您的主目錄中創建一個名為 .profile 的文件並添加以下行。
export PATH=“/usr/local/bin:/usr/local/sbin:/usr/bin:$PATH”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.