15.1.2 不带列表的for循环
不带列表的for循环的结构如下所示:
- for VARIABLE
do
command
done
读者一定会诧异:既然没有列表,那么如何向这个for循环传递变量值呢?实际上,使用不带列表的for循环时,需要在运行脚本时通过参数的方式给for循环传递变量值。
- [root@localhost ~]# cat for_list06.sh
#!/bin/bash
for VARIABLE
do
echo -n "$VARIABLE "
done
echo
#
运行时向脚本传入参数
[root@localhost ~]# bash for_list06.sh 1 2 3
1 2 3
该语法虽然可以工作,但是可读性较差,所以不建议使用。可利用特殊变量$@改写上述结构,使其变成下面的形式,功能是完全一样的。
- [root@localhost ~]# cat for_list07.sh
#!/bin/bash
for VARIABLE in $@
do
echo -n $VARIABLE
done
#
运行时传入参数
[root@localhost ~]# bash for_list07.sh 1 2 3
1 2 3