关于sed插入用法求解,跪求~
各位大神,请教一个关于sed或awk命令实现以下功能的方法:文件ip.txt的内容如下:
IP段的一 IP段的二 IP段的三
106.75.58.72/24101.52.131.65/23 106.75.176.56/20
45.249.244.141/20123.59.44.181/20 106.75.152.1/20
现在需要使用sed 或awk或者其他办法将插入的新的内容如下排列:
IP段的一 IP段的二 IP段的三
106.75.58.72/24101.52.131.65/23 106.75.176.56/20
111.111.111.111222.222.222.222333.333.333.333
45.249.244.141/20123.59.44.181/20 106.75.152.1/20
444.444.444.444 555.555.555.555 666.666.666.666
我的想法以及操作:
一、用sed /a\的方式如愿的插入了
# sed -i'/'45.249.244.141'/a\'444.444.444.444'' 2.txt
# cat 2.txt
IP段的一 IP段的二 IP段的三
106.75.58.72/24101.52.131.65/23 106.75.176.56/20
111.111.111.111
45.249.244.141/20123.59.44.181/20 106.75.152.1/20
444.444.444.444
但是再次插入时:
# sed'/'101.52.131.65'/a\\t\t'222.222.222.222'' 2.txt
IP段的一 IP段的二 IP段的三
106.75.58.72/24101.52.131.65/23 106.75.176.56/20
222.222.222.222
111.111.111.111
45.249.244.141/20123.59.44.181/20 106.75.152.1/20
444.444.444.444
结果:
sed并不会将111.111.111.111 与222.222.222.22视为同一行
期望:
如果需要按我的需求排列这里需要如何操作?如果sed无法实现那么是否有其他可行性?希望大神能够指点一二或者给个思路。万分感谢,跪求~~~ sed -i '1a111.111.111.111 222.222.222.222 333.333.333.333' ip.txt sed -i '3a444.444.444.444 555.555.555.555 666.666.666.666' ip.txt
idwen 发表于 2017-12-21 09:49
sed -i '1a111.111.111.111 222.222.222.222 333.333.333.333' ip.txt
非常感谢
页:
[1]