2

我正在尝试运行一个带有多个参数的 python 脚本,分别是选项卡警告、优化和详细参数-t-O-v
#!/usr/bin/python -t -O -v
这是我尝试以这种方式运行它时遇到的错误,终端中的 ./script.py 。

Unknown option: - usage: /usr/bin/python [option] ... [-c cmd | -m mod | file | -] [arg] ... Try python -h' for more information.

当我在 shebang 中最多有一个参数时,脚本运行良好。在 python shebang 中传递多个参数是否错误? 在终端上
运行脚本可以 工作。python -O -t -v script.py

我猜这是一个 python 问题,因为我有一个 perl 脚本,它具有以下 shebang#!/usr/bin/perl -w -t 并且运行正常。

我想出的唯一解决方法是创建一个python_runner.sh脚本来使用三个参数调用 python 解释器:

#!/bin/sh
python -O -t -v $1
4

1 回答 1

2

假设文件被调用test.py并以 shebang 开头:

#!/usr/bin/python -t -O -v

然后调用./test.py将相当于命令

/usr/bin/python '-t -O -V' ./test.py

第一个空格之后的所有内容都被视为一个参数,这就是为什么您只能在 shebang 中提供一个参数的原因。幸运的是,您可以将短选项链接到-tOv.

于 2013-06-28T00:04:14.367 回答