shell通过sed上下两行合并成一行的实现

一、shell上下两行

1.file

cat file.txt

  1. host1
  2. 192.168.0.1
  3. host2
  4. 192.168.0.2
  5. host3
  6. 192.168.0.3
  7. host4
  8. 192.168.0.4
  9. host5
  10. 192.168.0.5

2.sed

sed ‘N;s/\n/ :/’ file

  1. # cat file.txt | sed ‘N;s/\n/ :/’
  2. host1 :192.168.0.1
  3. host2 :192.168.0.2
  4. host3 :192.168.0.3
  5. host4 :192.168.0.4
  6. host5 :192.168.0.5

二、sed多行

N (next)多行操作命令,文本前后两行合并为一行

  1. # cat file.txt
  2. host11
  3. 192.168.0.1
  4. host222
  5. 192.168.0.2
  6. host3
  7. 192.168.0.3
  8. host44
  9. 192.168.0.4
  10. host555
  11. 192.168.0.5
  1. # sed ‘N;s/\n/ :/’ file.txt
  2. host11 :192.168.0.1
  3. host222 :192.168.0.2
  4. host3 :192.168.0.3
  5. host44 :192.168.0.4
  6. host555 :192.168.0.5

使用“制表符”\t对齐边缘

  1. # sed ‘N;s/\n/ \t/’ file.txt
  2. host11 192.168.0.1
  3. host222 192.168.0.2
  4. host3 192.168.0.3
  5. host44 192.168.0.4
  6. host555 192.168.0.5

到此这篇关于shell通过sed上下两行合并成一行的实现的文章就介绍到这了,更多相关shell sed合并内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

标签

发表评论