我有一个名为 test.sh 的文件:
#!/bin/bash -o pipefail
echo "Running test"
git diff HEAD^ HEAD -M --summary |
grep delete |
cut --delimiter=' ' -f 5
当我尝试将此脚本运行为:
./test.sh
我得到:
/bin/bash: line 0: /bin/bash: ./test: invalid option name
我跑去cat -v test.sh
检查是否有回车或任何东西,但似乎不是这样。如果我只是将它作为bash test.sh
. 感谢任何帮助,如果我能提供更多信息,请联系我!
Linux 内核将 shebang 行中第一个“单词”之后的所有内容视为单个参数。一种解决方案是
set -o
稍后在脚本中: