shell中经常会遇到循环,总结一下常用的循环以及当循环的参数是变量的用法。
1 for循环用法
循环的变量已知且不多时,可以这样
for i in 1 2 3 4 5
如果是文件或者文件内容
#lsfor file in `ls *.sh`do name=`echo "$file" | awk -F. '{print $1}'` echo $namedone#catfor file in `cat file.sh`do echo "$file" done
当参数是连续的时候
for i in {1..10}do echo $idone
如果10是变量,该怎么办?
用seq
num=10for i in `seq $num`do echo $idone
更自由的双括号写法
for((i=1;i<100;i++))doecho $idone
2 while 循环用法
常规用法
min=1max=100while [ $min -le $max ]do echo $min min=`expr $min + 1`done
read line
cat file.txt |while read linedo echo $linedone