我希望创建一个可以同时运行-u和-u gtest_filter =
的脚本目前我有
而getopts u:opt 2>的/ dev / null的;做
案例$ opt in
u)UNIT_TEST = 1; UNIT_TEST_OPTION = $ OPTARG ;;
?)用法>& 2;退出1 ;;
ESAC
完成
但要强制要求参数。我怎样才能解决这个问题,以便-u也能正常工作。
答案 0 :(得分:0)
使用u
代替u:
(删除冒号)。然后检查下一个参数,看它是否以-
while getopts u opt 2> /dev/null; do
case $opt in
u)
UNIT_TEST=1;
# Test first character of next option
if [ "$(echo "$2" | head -c 1)" != "-" ]; then
UNIT_TEST_OPTION=$2
shift # Move on to next option
fi
;;
?) usage >&2; exit 1 ;;
esac
done