shebang 行中的多个参数

shebang 行中的多个参数

Linux 仅支持 shebang 行中的一个参数:

这:

#!/bin/sh
cat > pr_args <<'EOF'
#!/bin/sh -e
printf "'%s'\n" "$@"
EOF

cat > shebang <<'EOF'
#!pr_args a b c
EOF

chmod +x pr_args shebang

./shebang A B C


rm shebang pr_args

印刷

'a b c'
'./shebang'
'A'
'B'
'C'

有没有 Unices 可以让我得到

'a'
'b'
'c'
'./shebang'
'A'
'B'
'C'

? Mac OS X 是做什么的?

答案1

要查看 shebang 机制的所有细节,请使用马斯检查页面

特别是关于“分裂论点”和下表可查看许多不同系统的详细信息。

还请看一下:“解释为#!脚本” 了解并非所有系统都允许一个 shebang 调用其他 shebang 脚本。

如果您需要/需要更多详细信息,请询问。

相关内容