bash:python3.3没有这样的文件或目录

时间:2013-09-10 18:06:00

标签: linux bash

我最近安装了python3.3.2的/ usr / local副本,当确信它是可靠的时,重新安装在/ usr下并删除了/ usr / local版本。当我将可执行文件作为/usr/bin/python3.3运行时,一切都很好但是当我将它作为'python3.3'运行时,我收到消息:

> python3.3
bash: /usr/local/bin/python3.3: No such file or directory

'which'找到/usr/bin/python3.3。我做了一个'set -u'和'set echo'试图弄清楚发生了什么但没有成功。 bash如何进入这里?

谢谢。 史蒂夫S。

2 个答案:

答案 0 :(得分:2)

shell仍然会记住您的可执行文件,就像使用hash一样:

hash: hash [-lr] [-p pathname] [-dt] [name ...]
    Remember or display program locations.

    Determine and remember the full pathname of each command NAME.  If
    no arguments are given, information about remembered commands is displayed.

      -r                forget all remembered locations

运行hash -r而不需要重新启动shell会解决这个问题。

更新:实际上shell也会记住它不仅仅是通过运行哈希。也许当你尝试执行它或做type -P prog之类的事情时,shell会记住它。这是我在测试中遇到的错误,我没有运行w

bash: /usr/local/bin/w: No such file or directory

而且hash -r修正了它。

答案 1 :(得分:0)

似乎bash正在某处缓存python3.3的先前位置。尝试关闭您的shell并再次登录 - 这应该擦除缓存并允许bash选择python3.3的正确位置。