使用#!/ usr / bin / env python3 shebang和Windows

问题描述 投票:2回答:1

我正在尝试从命令行运行Python脚本作为Windows上的命令 - 因此不使用“Python”或“.py”。如果我的脚本名为“testing.py”,我试图将此名称命名为命令并从命令行调用“testing”。

通过文档似乎我需要使用这个shebang #!/usr/bin/env python,只要我在我的PATH中有Python。

https://docs.python.org/3/using/windows.html#shebang-lines

我的PATH中也有脚本文件夹,所以“testing.py”之类的东西正在从命令行运行。

根据文档和本教程,https://dbader.org/blog/how-to-make-command-line-commands-with-python

如果我在PATH和上面的shebang中有正确的路径,我应该能够通过“测试”来唤起我的Python脚本。但是,如果没有添加“.py”,我似乎无法运行脚本。

python windows shebang
1个回答
2
投票

不,Windows不支持shebang线。

您链接的文档与Python安装的py启动程序有关,它可以解释各种shebang行以选择运行脚本的Python版本。

setuptools能够为你的Python脚本but it gets a little involved生成包装.exes,并且已经假定你有一个包含setup.py的包等等。

在本地,如果你真的,真的需要这个,你可能可以添加.pyPATHEXT environment variable,所以Windows命令行查找.pys就像它查找.exes(以及其他各种;当前的现代默认值是.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC)。但是,这通常无法扩展应用程序,因为您的所有用户也需要进行设置。

我的建议是坚持那个无聊的旧python testing.py,真的。

© www.soinside.com 2019 - 2024. All rights reserved.