shell脚本--whilereadline循环
while read line循环可以按⾏读⼊,⼀直到所有⾏读完才退出循环。在实际⼯作中,经常采⽤这种循环进⾏数据处理。#!/bin/bash
# 测试 while read line 循环的使⽤
# 循环读取⼀个ip⽂件的每⼀⾏,输出每⾏的设备名称和ip
cat ./ip.txt | while read ipline
do
devname=$(echo $ipline | awk '{print $1}')
ip=$(echo $ipline | awk '{print $2}')
echo "$devname : $ip"
sleep 1
done
提⽰:cat ./ip.txt也可以换成其他命令,只需要命令执⾏的结果是⼀个列表可以⼀⾏⼀⾏遍历即可。
注意:while read line循环体重使⽤的变量都会在循环执⾏完后被销毁,⽐如以下例⼦,sum最终的结果为0。
#!/bin/bash
# 测试while read line 循环的使⽤
# 循环读取⼀个ip⽂件的每⼀⾏,输出每⾏的设备名称和ip
sum=0
cat ./ip.txt | while read iplineshell脚本返回执行结果
do
devname=$(echo $ipline | awk '{print $1}')
ip=$(echo $ipline | awk '{print $2}')
echo "$devname : $ip"
let sum++
sleep 1
done
echo $sum

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。