将单行、空格分隔的 ip 列表转换为单列,每个 IP 为一行

将单行、空格分隔的 ip 列表转换为单列,每个 IP 为一行

我实际上正在寻求对这个问题进行相反的操作:

将列表变成带有分隔符的单行

对我有用的最佳答案是:

sed -e :a -e '$!N; s/\n/ | /; ta' mydoc > mydoc2

非常感谢任何帮助。

答案1

只需使用tr命令更改将<space>|<space>序列替换为换行符

tr -s ' | ' '\n' < mydoc > mydoc2

答案2

使用 awk :

awk 'BEGIN { RS="|"} { gsub(" ","");print >> "mydoc2" }' mydoc

相关内容