[英]How do you make a python script globally executable? OSX
我已经阅读了许多其他答案,以尝试使其正常运行,但是由于某些原因,它却无法解决。 我已经更改了权限,并使用chmod +x <myscript.py>
使.py可执行文件,并将文件复制到OSX上默认情况下已在我的PATH中的/ usr / local / bin中,除非我位于脚本所在的目录中,否则我仍然无法执行该脚本。
另外,我对标头的工作方式有些困惑。 我目前拥有#!/usr/bin/python
因为当我将其更改为#!/usr/local/bin
以匹配目录时,当我运行脚本时,我的终端说我有一个“错误的解释器”。
我知道这个话题已经讨论了很多,但是其他修复没有用。 提前致谢。
如果您像这样运行脚本:
./Untitled.py
Bash会尝试在当前目录中查找脚本-因为您已经使用文件路径(在这种情况下为相对路径)调用了脚本。
但是,如果您像这样运行脚本:
Untitled.py
Bash将在您的PATH
搜索具有该名称的可执行文件。 假设您已将该脚本设置为可执行文件(使用chmod
),并且该脚本位于PATH
的目录中,则该脚本应该运行。
关于she-bang行,而不是硬编码到特定的Python( /usr/bin/python
),更常见的方法是:
#! /usr/bin/env python
脚本将由当前处于活动状态的任何Python执行(例如,您可能会使用virtualenv
或pyenv
在Python之间进行切换,具体取决于当前项目)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.