我试图将平面文件数据库filename=iplocationdata
重新组合成部分。用sed或awk对输出数据进行分组
此文件经常更新,它包含几千行,所以我想找到一个智能的解决方案脚本的输出。
我得到这个样子的:
NA
10.0.0.0/16
Dallas1
NA
10.1.0.0/16
Houston1
EMEA
10.2.0.0/16
Paris1
EMEA
10.3.0.0/16
London1
APAC
10.4.0.0/16
Hong-Kong1
APAC
10.5.0.0/16
Shanghai1
我需要两个不同的输出。
的第一个我解决了这一点:
awk 'NR%3{printf $0" ";next;}1' iplocationdata
NA, 10.0.0.0/16, Dallas1
NA, 10.1.0.0/16, Houston1
EMEA, 10.2.0.0/16, Paris1
EMEA, 10.3.0.0/16, London1
APAC, 10.4.0.0/16, Hong-Kong1
APAC, 10.5.0.0/16, Shanghai1
的第二列表,我想这样看:
NA
10.0.0.0/16, Dallas1
10.1.0.0/16, Houston1
EMEA
10.2.0.0/16, Paris1
10.3.0.0/16, London1
APAC
10.4.0.0/16, Hong-Kong1
10.5.0.0/16, Shanghai1
这个我一直没能解决。如果可能的话,我更喜欢一个班轮,有人有这个好的解决方案吗?
决不做'printf的$ 0',永远做'printf的 “%S”,$ 0'代替。想象一下当$ 0包含'printf'格式化字符时/区别。 –