如何在指定的某一行的某个特定字符串前面添加特定字符串,而不是替换?

来源:2-6 shell字符截取命令之sed命令(下)

linger傻傻分不清

2017-06-20 16:17

sed只能行添加吧


写回答 关注

2回答

  • linger傻傻分不清
    2017-06-25 09:29:00

    这个思路可以有。既然添加字符串必定会位移啊。
    假如student.txt是这样:

    1     teacher  cang   cang  jinkong

    需要把第2个cang前面添加cangls怎么办?

  • 煌煌菌
    2017-06-25 01:53:40

    我换了一个思路。用老师课件里的内容做例子。

    sed 's/cang/cangls/g' student.txt

    #替换cang为cangls

    在这里如果我要在cang前加入特定字符串“0000”

    sed 's/cang/0000cang/g' student.txt

    #还是替换,但是我没有删除cang,而是改成了0000cang,做到了添加特定字符串的类似功能。但问题是字符产生了位移。

    3    cangls    F    70

    3    0000cangls    F    70

shell编程之正则表达式

为你带来shell编程中的正则表达式,能够熟练运用正则表达式

39682 学习 · 73 问题

查看课程

相似问题