python - 错误的解释器没有这样的文件或目录/usr/bin/python

标签 python

我创建了脚本 python 并将其移至/usr/bin 并通过 sdfgdgh 命名脚本而不使用 .py 并在脚本中编写此代码

#! /usr/bin/python

print("worked")

我得到了脚本 chmod +x
但是当我输入终端 sdfgdgh 时给我错误:

bad interpreter no such file or directory /usr/bin/python



为什么以及解决方案是什么?

最佳答案

问题在于您的 python 安装。可能是您的/usr/bin/python要么根本不存在,要么是指向不存在的 python 的死符号链接(symbolic link)。
所以第一个解决方案是检查 /usr/bin/python存在。如果是这样,请检查它是否不是死链接,如果是,请修复链接以指向现有的 python 解释器:

cd /usr/bin
sudo ln -fs <full_path_to_existing_python_binary> python
如果您不能或不想更改 /usr/bin/python但是您已经安装了 python 并且系统可以识别它的位置(即从 shell 调用 python),您可以尝试更改脚本作为解决方法:
#! /usr/bin/env python
print("worked")
这样,只要 Python 位于您的 PATH 中,您的脚本就会使用 Python 作为解释器,而不管真正的 Python 位置如何。

关于python - 错误的解释器没有这样的文件或目录/usr/bin/python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47822600/

相关文章:

python - 使用列表理解从 python 函数输出多个列表

python - 我可以在 SQLAlchemy 中将相同的对象两次附加到 InstrumentedList 吗?

python - 如何在if语句中退出python脚本

Python正则表达式在某一点之前删除所有内容

python - 如何检查英语中单词的频率

python - 在不计算导数的情况下最大化函数 f(x)

python - 如何在 Python 中最小化特定窗口

python - 如何限制 Django 应用程序中显示的项目数量

python - Django channel + 在发布请求后发送 websocket 消息

python - 从嵌入另一个脚本的 python 脚本获取复选框状态