通常,脚本参数是从$1
,$2
,...
中读取的。
有时,它与shift
和while
循环和case
语句结合使用以处理多个参数。
while [[ $# > 0 ]]; do
case "$1" in
-v|--verbose)
VERBOSE=1
;;
-d|--debug)
VERBOSE=1
DEBUG=1
;;
*) # unknown option
echo 1>&2 -e "${COLORED_ERROR} Unknown command line option '$key'.${ANSI_NOCOLOR}"
exit 1
;;
esac
shift # parsed argument or value
done
今天,我发现了一个基于简单的for
循环的代码段:
#! /bin/bash
for opt; do
echo $opt
done
执行:
$ ./test.sh foo bar spam
foo
bar
spam
通常,人们会看到for i in ...; do
。
为什么/如何简化 循环访问脚本参数?
它还可以与函数中的参数一起使用吗?
答案 0 :(得分:1)
来自help for
:
如果不存在
in WORDS ...;
,则假定为in "$@"
。