我想通过“Here Document”在我的 bash shell 脚本中的一些参数之后执行一个 python 脚本,如下
python <<'__SCRIPT__'
...
__SCRIPT__
ARG1 ARG2 ...
但不知道如何给出这些论点。我尝试将它们放在 python 之后,在SCRIPT之后和SCRIPT之后的新行之后。但是在执行时,所有情况下都会报告错误。
那么正确的方法是什么?
BR,若尘
参数是命令的一部分。
python - arg1 arg2 << ...
<<__SCRIPT__
实际上不是传递给 python 的脚本,它是包含脚本的流。您必须告诉 python 从哪里获取脚本,-
在这种情况下。这就是为什么python - arg1 arg2 <<'__SCRIPT__'
:
$ cat here-py.sh
python - foo bar <<__SCRIPT__
import sys
print(sys.argv)
__SCRIPT__
$ ./here-py.sh
['-', 'foo', 'bar']