分享
三行代码  ›  专栏  ›  技术社区  ›  anarchy

如何使用sed将字符串添加到文件中的特定行?

sed
  •  0
  • anarchy  · 技术社区  · 5 天前

    我有以下文件test.txt文件

    node1
    node2
    node3
    node4
    

    我想用sed在node2旁边的空格后面加上字符串“1”,这样看起来像这样。

    node1
    node2 1
    node3
    node4
    

    我试过了 sed '/node2/a 1' test.txt 但它增加了一条新的线。我如何在后面加一个空格,然后加一个1。

    2 回复  |  直到 5 天前
        1
  •  2
  •   Barmar Ram Patra    5 天前

    a 用于添加新行。使用 s 以就地修改行。

    sed '/node2/s/$/ 1/' test.txt
    
        2
  •  -1
  •   Kevin Giraldo    5 天前

    试试这个:

    sed -i 'N a <LINE-TO-BE-ADDED>' FILE.txt
    

    sed -i '2 a 1' test.txt