Python命令行-x选项
我最近看到python将-x作为一个命令行选项,它实现了这里文档中的解释Python命令行-x选项,python,windows,python-2.7,python-3.x,Python,Windows,Python 2.7,Python 3.x,我最近看到python将-x作为一个命令行选项,它实现了这里文档中的解释 python -x Skip the first line of the source, allowing use of non-Unix forms of #!cmd. This is intended for a DOS specific hack only. 但是,请原谅:我真的不明白为什么有人会使用非Unix形式的!cmd,即使它是为DOS而做的,为什么要跳过它?用第一行启动Windows批处理脚本.bat/.
python -x
Skip the first line of the source, allowing use of non-Unix forms of #!cmd. This is intended for a DOS specific hack only.
但是,请原谅:我真的不明白为什么有人会使用非Unix形式的!cmd,即使它是为DOS而做的,为什么要跳过它?用第一行启动Windows批处理脚本.bat/.cmd:
@echo off & python -x "%~f0" %* & goto :eof
运行它时,cmd.exe将使用脚本的完整文件路径和其余命令行参数以静默方式运行python-x,然后忽略文件的其余部分。python将读取该文件,跳过第一行不会作为python代码解析的代码,并将其余的代码视为普通python脚本
这在类UNIX平台上是不必要的,因为
#!/usr/bin/env python
在脚本的顶部获得类似的行为,这看起来像Python的注释,因此它可以继续执行文件的其余部分。使用以下第一行启动Windows批处理脚本.bat/.cmd:
@echo off & python -x "%~f0" %* & goto :eof
运行它时,cmd.exe将使用脚本的完整文件路径和其余命令行参数以静默方式运行python-x,然后忽略文件的其余部分。python将读取该文件,跳过第一行不会作为python代码解析的代码,并将其余的代码视为普通python脚本
这在类UNIX平台上是不必要的,因为
#!/usr/bin/env python
在脚本的顶部获得类似的行为,这看起来像Python的注释,因此它可以继续执行文件的其余部分。谢谢你的回答。谢谢你的回答。注意,文档的输出日期是,CPython已经很长时间不支持MS-DOS了。这实际上是一个特定于窗口的黑客攻击。请注意,文档是日期输出的,CPython已经很长时间不支持MS-DOS了。这实际上是一个特定于窗口的黑客行为。