【发布时间】:2018-07-12 01:28:33
【问题描述】:
这是我的脚本。我从this tutorial 改编它,所以它不会是脚本本身的错误。 (原来的脚本也有同样的问题。)
#!/bin/bash
while getopts "a:" opt; do
case $opt in
a)
echo "-a was triggered, Parameter: $OPTARG"
;;
esac
done
这是我的输出:
bash-3.2$ source getopt.sh
bash-3.2$ source getopt.sh -a /dev/null
-a was triggered, Parameter: /dev/null
bash-3.2$ source getopt.sh -a /dev/null
bash-3.2$
我已经在互联网上进行了梳理,但找不到任何关于这种行为的解释。
【问题讨论】:
-
为什么使用
source来运行脚本? -
@choroba 有什么不同?
标签: bash shell command-line-arguments getopts