高级bash编程指南(四)
时间:2011-03-16 来源:xdzone
一:循环和分支
1.
for planet in "Mercury 36" "Venus 67"
do
set --$planet
echo "$1 $2,000,000 miles from sun "
done
exit 0
2.当一个for循环中忽略in [list]部分,将会使循环操作$@
3.使用命令替换来产生循环的【list】
NUMBERS=“9 8 7 5”
for number in `echo $NUMBER`
4.C风格for循环
for ((a=1,b=1;a<LIMIT;a++,b++));do
echo -n "$a"
done
5.C风格while循环
while (( a<=LIMIT ));do
echo -n "$a"
((a+=1))
done
二:嵌套循环
三:循环控制
1.break和continue类似于C语言,但是不同之处是break和continue
后面可以加参数N,指定跳出N层循环。
四:测试与分支
1.对变量使用“”可以防止单词分割。
2.read Keypress
case "$Keypress" in
[[:lower:]] ) echo "Lowercase letter";;
[[:upper:]] ) echo "Uppercase letter";;
[0-9] ) echo "Digit";;
* ) echo "......."
esac
[[:lower:]]POSIX风格,[a-z]也可以,但是在某些
linux发行版中不能够正常工作。
3. select var [in list]
当忽略了in list列表,那么select命令将会使用传递到脚本的命令行参数($@),或者是函数参数(在函数中的时候)
select var [in list]
do
command
break #没有break,将一直循环
done