Python 可以 运行 来自 OSX Finder 和 Windows 资源管理器的脚本
Python script that can run from OSX Finder and Windows Explorer
我有一堆有用的 Python3 脚本,我在不同的 OS 环境中使用。从终端调用时它们 运行 很好,但我想从 Windows Explorer 和 OSX Finder 运行 它们。在 Windows 中,这不是问题,因为 *.py 文件与安装的解释器相关联。
对于 OSX,我遇到了一些问题。我尝试使用 shebang 线。
#!/usr/bin/python3
但 Finder 无法将其识别为脚本。如何让 Finder 将 *.py 文件识别为脚本?我感兴趣的是通过尽可能少的 OS 修改获得最大的可移植性。
我在上面还明确指定了解释器位置。对于不同的 OSes,它将位于不同的位置。有没有办法让它成为 multi-OS ,这样如果它在一个位置找不到它,它会尝试另一个?假设我想从 Ubuntu 的 GUI 文件管理器之一 运行 它。
编辑:这是关于我的用例的更多信息。我想换一台新电脑,git 克隆我的 Python3 脚本回购协议,并能够从 GUI 文件管理器中 运行 它们,对新电脑的改动很小。
为了使脚本更便携,使用 #!/usr/bin/env python3
作为 shebang。副作用是它将 运行 它在 $PATH (Unix StackExchange question on that subject)
中找到的第一个 python3 解释器
到 运行 取景器中的脚本尝试对文件进行 chmod。 IE。
chmod +x FILE
在这里找到另一种可能性:Link to the Blog
- 将其设为 Python 脚本的第一行“#!/usr/bin/env python”
- 将脚本文件的扩展名更改为“.command”即my_python_script.command
- 在终端中通过 运行ning "chmod +x my_python_script.command"
使 Python 脚本文件可执行
- 现在,当您在 Finder 中双击 Python 脚本时,它将打开终端 window 和 运行。
我发现的替代方案是这个,但它需要修改系统:Superuser question
我有一堆有用的 Python3 脚本,我在不同的 OS 环境中使用。从终端调用时它们 运行 很好,但我想从 Windows Explorer 和 OSX Finder 运行 它们。在 Windows 中,这不是问题,因为 *.py 文件与安装的解释器相关联。
对于 OSX,我遇到了一些问题。我尝试使用 shebang 线。
#!/usr/bin/python3
但 Finder 无法将其识别为脚本。如何让 Finder 将 *.py 文件识别为脚本?我感兴趣的是通过尽可能少的 OS 修改获得最大的可移植性。
我在上面还明确指定了解释器位置。对于不同的 OSes,它将位于不同的位置。有没有办法让它成为 multi-OS ,这样如果它在一个位置找不到它,它会尝试另一个?假设我想从 Ubuntu 的 GUI 文件管理器之一 运行 它。
编辑:这是关于我的用例的更多信息。我想换一台新电脑,git 克隆我的 Python3 脚本回购协议,并能够从 GUI 文件管理器中 运行 它们,对新电脑的改动很小。
为了使脚本更便携,使用 #!/usr/bin/env python3
作为 shebang。副作用是它将 运行 它在 $PATH (Unix StackExchange question on that subject)
到 运行 取景器中的脚本尝试对文件进行 chmod。 IE。
chmod +x FILE
在这里找到另一种可能性:Link to the Blog
- 将其设为 Python 脚本的第一行“#!/usr/bin/env python”
- 将脚本文件的扩展名更改为“.command”即my_python_script.command
- 在终端中通过 运行ning "chmod +x my_python_script.command" 使 Python 脚本文件可执行
- 现在,当您在 Finder 中双击 Python 脚本时,它将打开终端 window 和 运行。
我发现的替代方案是这个,但它需要修改系统:Superuser question