遍历以空格分隔的字符串

遍历以空格分隔的字符串

所以我跑ips=$(arp | awk '{print $1}')将从命令检索到的所有 IP 地址保存arp到变量ips.echoips了我Address 192.168.10.100 192.168.10.101 192.168.10.1。我假设它Address 192.168.10.100 192.168.10.101 192.168.10.1被保存为ips变量中的字符串。我想要的是一种循环遍历变量的方法ips,也许可以将变量保存在变量中,ip用它做一些事情,然后移动到下一个变量。

答案1

空格是默认的字段分隔符,因此一个简单的for循环可以毫无问题地处理这个问题。执行此操作时要非常小心,因为您可以执行这些类型的循环很容易得到意想不到的结果

ips=$(arp | awk '{print $1}')
for ip in $ips
do
     #Work here
     echo IP: $ip
done

相关内容