sed -i '/add specific/a\ hello(0);' App.c
上面的命令可以在 app.c中的包含有add specific行的下面,插入“hello(0)”这句话。
上面的命令在插入内容后会新建一行。
如果你就只想在行尾插入的话可以使用
sed 's/^PRJ_OBJS.*$/& \.\.\/netserver/g' Makefile
这条命令的意思是在 以 PRJ_OBJS 开头的行的结尾处插入 “ ../netserver” 字符。其中"../netserver"的"../",分别使用"\"转义了以保证它的正确性。
SED学习笔记 应该是天水师范大学的老师写的吧:
链接已经失效:(
http://www.tsnc.edu.cn/default/tsnc_wgrj/doc/sed.htm
下面是一个例子:
关于可以在特定行插入特定内容,替换特定行的内容。
第一个sed命令是在以passwrod开头的行前面加入特定内容A。
第二个是把当前找到的特定行替换为内容A。
#!/bin/bash
A="password required /lib64/security/pam_cracklib.so retry=3 minlen=12 difok=3 ucredit=1 lcredit=2 dcredit=1 ocredit=1"
if ! grep pam_cracklib.so $1 >/dev/null ; then
echo NO
sed -i "/^password/i\\${A}" $1
else
echo YES
sed -i "s#.*pam_cracklib.so.*#${A}#" $1
:
fi