当我尝试通过在桌面或 Caja 中双击运行任何 Python 脚本时,终端窗口会瞬间出现(因此执行确实开始),然后消失,脚本没有运行。我的所有脚本都以/usr/bin/env python3shebang 行和 Python 3 已安装。我可以从 Python 或 IPython 会话中毫无问题地执行它们。什么可能阻止它们在 doubleclick 上运行?
答案1
我找到了问题所在。Python 文件包含 Windows 行尾(“\r\n”)而不是 Unix 行尾(“\n”)。IPython 无论如何都能运行它们,但 env 不能,将 shebang 行读为调用“python3\r”。将行尾更改为 Unix 样式即可解决此问题。许多文本编辑器都有命令来执行此操作,例如 Geany 有各种选项文档/设置行尾。