循环: 1, while语句: while 条件句 do 指令 done strace 跟踪一个进程的系统调用情况 1,while循环的特长是执行守护进程以及我们希望循环不退出持续执行,用于频率小于1分钟循环处理(crond), 其他的while循环几乎都可以被我们即将要讲for循环代替。 2,if语句可以替换case语句,一般在系统启动脚本传入少量固定规则字符串,用case,其他判断多用if. 3,一句话,if,for 语句最常用,其次while(守护进程),case(服务启动脚本)。 [root@node1 ~]# cat a.sh #! /bin/bash for n in 1 2 do echo -e "\033[31m $n \033[0m" done [root@node1 ~]# sh -x a.sh + for n in 1 2 + echo -e ‘\033[31m 1 \033[0m‘ 1 + for n in 1 2 + echo -e ‘\033[31m 2 \033[0m‘ 2 [root@node1 ~]# #! /bin/bash for((i=0;i<=5;i++)) do if [ $i -eq 3 ];then #continue #break exit fi echo $i done echo "OK" 检查网段在线的IP: [root@node1 ~]# cat ping.sh #! /bin/bash for i in `seq 254` do ping -c2 10.0.0.$i &>/dev/null 2>&1 if [ $? -eq 0 ] echo "10.0.0.$i up" >> /tmp/up.log else echo "10.0.0.$i down" >> /tmp/down.log fi done