繁体   English   中英

直接从命令行运行 python 脚本

[英]run python script directly from command line

#!/usr/bin/env python

我把它放在脚本的顶部。 我已经看到应该使脚本可以从命令行运行,而无需python programname.py 除非我有误解,否则只要我在脚本顶部有上述行,我就应该能够使用programname.py 这个对吗?

它对我不起作用,我只是收到一个错误,表明我必须在“呼叫”开始时使用python

通用运行Python脚本

你可以在没有shebang( #! )的情况下普遍运行

python myscript.py

或几乎相当(它将当前目录放在您的路径上并执行名为myscript的模块) (最好这样做!)

python -m myscript

从命令行,只要你安装了Python并在你的路径环境变量上(即设置为使用python运行,如果安装了,通常就是这种情况)。

Shebangs( #! )是一个Unix的东西。

正如您所使用的那样,shebang通常用于在Unix平台(通常是Apple或Linux)上运行。 Windows通常需要cygwin才能使用shebang。

您通常可以默认使用系统路径上可用的任何python:

#!/usr/bin/env python

假设您使用的是Unix,可以尝试其他位置进行python设置,例如:

#!/usr/bin/python

蜷缩在一起

您可以使用unix which命令查看当前正在使用的python,因此如果您想查看python的来源,请使用以下命令:

which python

或者在Windows上(cygwin可能会运行shebang):

where python

在Linux / Unix上,你也需要执行perms来以这种方式运行文件。 使用chmod

chmod +x myscript.py

(chmod也可能适用于Windows中的Cygwin)

如果你不是以root身份运行,那么你可能需要sudo ,那就是

sudo chmod +x myscript.py

然后尝试运行(在同一目录中)

./myscript.py 

使文件可执行

sudo chmod +x /path/to/file.py

然后从与file.py相同的目录:

./file.py

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM