2

我每天都会收到一个带有 ip:port 的文本文件,每行一个,例如:

11.22.33.44:80
22.33.44.55:8080
33.44.55.66:7777

我想在两个不同的变量中解析第一个 ip 和端口,然后将它们写入另一个文件,等待使用这些变量的程序的执行,循环这个循环以将所有 ip:port 传递给文件并执行程序。

我怎样才能做到这一点?

谢谢你

4

2 回答 2

4

一个纯粹的 bash 解决方案:

while IFS=: read ip port; do
    echo $ip $port
done < in.txt

这样做的好处是允许您在 while 循环内设置在循环完成后仍然可用的变量。

于 2012-07-11T10:06:59.340 回答
2
cat in.txt | sed -e "s/:/ /" | while read ip port
do
  echo $ip $port # or do something with it
done
于 2012-07-11T08:37:49.833 回答