路径,/ usr / bin /和/ usr / local / bin /

时间:2013-04-29 02:43:48

标签: linux macos bash command-line watchr

我使用gem install watchr在OS X(10.8.3)上安装了 watchr 。它安装在 / usr / bin / watchr

$ which watchr
/usr/bin/watchr

但是,当我尝试将其称为$ watchr -v时,系统无法找到它。

$ watchr -v
-bash: /usr/local/bin/watchr: No such file or directory

我认为这与我的机器上的路径设置有关。我的问题:

  1. 修复它的正确方法是什么?
  2. 一般来说,哪些程序应该转到/usr/bin//usr/local/bin/
  3. 当我这样做的时候$ /usr/bin/watchr -e 'watch(./hello.txt) ...',我们正在查看当前目录中的 hello.txt / usr / bin / ,即与 watchr相同的目录

3 个答案:

答案 0 :(得分:10)

您的命令路径缓存了错误的值。尝试更新bash为路径存储的缓存目录。

hash -d watchr

我在这里找到了答案which ctags shows /usr/local/bin/ctags but when I run ctags it runs /usr/bin/ctags. How is this possible?

答案 1 :(得分:2)

/ 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 / local / bin /.

我在路径上的其他文件夹之前也有/ usr / local / bin /,我把我安装或编译的大多数程序手动放到/ usr / local / bin /。我曾经有一个单独的〜/ bin /文件夹,但很容易找到类似find /usr/local/bin ! -lname '../Cellar/*'的非Homebrew程序。

关于/ usr / local / bin /的相关问题:

答案 2 :(得分:0)

在主目录中创建一个名为.profile的文件,并添加以下行。    export PATH =“/ usr / local / bin:/ usr / local / sbin:/ usr / bin:$ PATH”