当前位置: 技术问答>linux和unix
shell脚本里的变量?
来源: 互联网 发布时间:2017-02-02
本文导语: while getopts "o:g:h" opt do case "$opt" in g) SCRIPTS_LOCATION=$OPTARG ;; o) MYSQL_OPT=$OPTARG ;; h) show_usage ...
while getopts "o:g:h" opt
do
case "$opt" in
g)
SCRIPTS_LOCATION=$OPTARG
;;
o)
MYSQL_OPT=$OPTARG
;;
h)
show_usage
exit 0
;;
*)
show_usage
exit 1
;;
esac
done
在一个shell脚本里面看到这样一段代码,有些疑问,请不吝赐教:
1getopts是内置变量吗,在此脚本和所引用的文件里都找不到这个getopts,是什么东东,我能理解的是拿到所有可能的参数。
2 OPTARG又是什么变量,是内置的吗,linux里面又有哪些内置变量呢?
do
case "$opt" in
g)
SCRIPTS_LOCATION=$OPTARG
;;
o)
MYSQL_OPT=$OPTARG
;;
h)
show_usage
exit 0
;;
*)
show_usage
exit 1
;;
esac
done
在一个shell脚本里面看到这样一段代码,有些疑问,请不吝赐教:
1getopts是内置变量吗,在此脚本和所引用的文件里都找不到这个getopts,是什么东东,我能理解的是拿到所有可能的参数。
2 OPTARG又是什么变量,是内置的吗,linux里面又有哪些内置变量呢?
|
getopts 是一个命令
OPTARG 存放一个选项对应的值
比如 cmd -o abc,那么OPTARG就是abc
OPTARG 存放一个选项对应的值
比如 cmd -o abc,那么OPTARG就是abc
|
OPTARG这个是程序默认参数
就像C中
int main(int agv,char *args[])
中的args代表的变量
|
getopts是bash builtin command
OPTARG是shell Variables
OPTARG是shell Variables
|
|
是什么楼上都说了,随便找一本关于bash的书,看看里面关于getopts的章节哈,这样会得到比较详细准确的答案。