当我做
which pip3
我懂了
/usr/local/bin/pip3
但是当我尝试执行时pip3
,出现如下错误:
bash: /usr/bin/pip3: No such file or directory
这是因为我最近删除了该文件。现在which
命令指向的另一个版本pip3
是位于/usr/local/bin
但外壳还记得在错误的道路。我该如何忘记那条路?
该which
手册说
which returns the pathnames of the files (or links) which would be executed in the current environment, had its arguments been given as commands in
a strictly POSIX-conformant shell. It does this by searching the PATH for executable files matching the names of the arguments. It does not follow
symbolic links.
双方/usr/local/bin
并/usr/bin
都在我的PATH
变量,而/usr/local/bin/pip3
不是一个符号链接,它是一个可执行文件。那为什么不执行呢?
您以前是否曾
—
埃里克·雷诺夫
pip3
在该外壳中运行过该外壳/usr/bin
,然后再将其移动?
如果跑步,您会看到什么
—
埃里克·雷诺夫
hash -t pip3
?
@Eric Renouf
—
Spiderface '17
hash -t pip3
印刷品/usr/bin/pip3
除非您有很好的理由,否则应始终使用
—
icarus
type
e而不是which
。type
内置在posix外壳中,并告诉您外壳将执行什么操作,而不是告诉您which
试图猜测该外壳将执行什么操作。
/usr/local/bin/pip3
什么?