【发布时间】:2013-11-20 16:51:03
【问题描述】:
我有一个带有命令行参数的 bash 脚本,如下所示:
./myscript.sh -P1 valueofP1 -A3 valueofA3
是否有任何常用方法来获取此处显示的值并让本地脚本变量 P1 和 A3 获取下一个参数中的值?
【问题讨论】:
-
RM1970 的评论是正确的。查看stackoverflow.com/questions/16483119/…。
我有一个带有命令行参数的 bash 脚本,如下所示:
./myscript.sh -P1 valueofP1 -A3 valueofA3
是否有任何常用方法来获取此处显示的值并让本地脚本变量 P1 和 A3 获取下一个参数中的值?
【问题讨论】:
shift
while [ $# -gt 0 ]
do
case $1 in
-P1)
shift
arg=$1
shift
echo "P1:$arg"
;;
-A3)
shift
arg1=$1
shift
arg2=$1
shift
echo "A3: $arg1 and $arg2"
;;
*)
echo "Unknown argument $1" >&2
exit 1
;;
esac
done
用法:
$ ./test.sh -P1 AAA -A3 B C
P1:AAA
A3: B and C
【讨论】: