奥德赛F9 发表于 2018-8-27 08:54:49

linux shell脚本用while read逐行读取文本的问题

1、while使用机制,ip.txt文件中的信息都已经读入并给了整个while语句。所以当我们在while循环中再一次调用read语句,就会读取到下一条记录。问题就出在这里,ssh语句正好回读取输入中的所有东西。为了禁止ssh读所有东西增加一个< //null,将ssh 的输入输入  
while read ips;
  
do
  
      echo $ips;
  
      upt=`ssh root@${ip1} uptime < //null;`;
  
      echo $upt;
  
done < ip.txt;
  
2、用for
  
for ips in `cat ip.txt`; do
  
       echo ${ips};
  
       upt=`ssh root@${ips} uptime`;
  
       echo $upt;
  
done


页: [1]
查看完整版本: linux shell脚本用while read逐行读取文本的问题