【shell】for while 循环的例子,快速了解

for

  1. 循环读一个文件的每一行
    for i in `cat temp.list`;do echo $i;done
    for ip in $(cat ip.list);do ping -c 2 $ip;done
  2. 循环打印数字
    for a in {1…5};do echo $a;done
    for a in {1…5…2};do echo $a;done #等差
    for a in $(seq 1 5);do echo $a;done
    for a in $(seq 1 2 5);do echo $a;done
    在这里插入图片描述
  3. 循环遍历
    for ip in 192.168.66.{10,20,21,100};do ping -c 2 $ip;done
    for ip in 192.168.66.{20…21} 192.168.66.{10,100};do ping -c 2 $ip;done
  4. 每次读取文件中一个以空格为分隔符的字符串,默认是换行符号
IFS_old=$IFS
IFS=$'\n'
#在接下来的代码中使用新的IFS
for i in `cat emp.list`
do
  echo $i
done
#使用完毕后恢复IFS原来的值
IFS=$IFS_old

while

while read line 是一次性将一行的文件信息读入并赋值给变量line。当文件中有多行文字,在while循环中再一次调用read语句,就会读取到下一条记录。而$line中的最后一行读完,无法获取下一行记录,从而退出while循环。

while read line
do
    echo $line
done < test.txt

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值