2013-07-26 24 views
0

我通过pip安装Fabric`哪找到文件,但`bash`不是

得到了pip由:

sudo apt-get install python-pip 

了面料由:

sudo pip install fabric 

(它,当我试图瓦特/ sudo的失败,并警告我,在文档或测试缺少的文件) 。

现在我得到如下:

$ which fab 
/usr/local/bin/fab 
$ 
$ fab 
bash: /usr/bin/fab: No such file or directory 

咦!?我认为whichPATH中搜索了bash会使用的分辨率。我误解了什么吗? Fabric,Pip还是Bash在这里被责备?我如何解决它?

我知道现在我可以运行/usr/local/bin/fab或:

`which fab` deploy 

但我想它正常运行!

+0

'type fab'说什么? – Barmar

+0

$ type fab fab是/ usr/local/bin/fab – Crisfole

+0

那么......理解Bash(“主要用于编程的工具”)在这里脱离主题了吗?我强烈反对。 – Crisfole

回答

11

下面将清除其中的bash 认为fab位于:

hash -d fab 
+0

解释?我不会输入它,不理解它... – Crisfole

+0

也“哪个散列”返回没有 – Crisfole

+0

它更新命令位置的shell散列。这是在'人bash'。 – Barmar

1

如果which fab/usr/*local*/bin,但/usr/bin/fab不能运行,我想一个破碎的符号链接。或/usr/local/bin/fab是一个脚本,调用/usr/bin/fab(不存在)。

尝试file /usr/local/bin/fab

+0

file/usr/local/bin/fab /usr/local/bin/fab:Python脚本,可执行的ASCII文本 – Crisfole

+0

检查脚本的第一行;他们是否指向一个不存在的'/ usr/bin'可执行文件? – Evert