linux sed在某些字符串的下一行插入内容?sed在下一行插入?

Posted QA-3K

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux sed在某些字符串的下一行插入内容?sed在下一行插入?相关的知识,希望对你有一定的参考价值。

需求描述:

  今天在配置nrpe的时候,使用到了在搜索到某些字符串之后,然后在字符串的下一行进行插入字符串

  在此记录下如何实现.

操作过程:

1.查看原文件中的内容

[[email protected] ~]# cat nrpe.cfg 
#command[check_users]=/usr/local/nagios/libexec/check_users -w $ARG1$ -c $ARG2$
#command[check_load]=/usr/local/nagios/libexec/check_load -w $ARG1$ -c $ARG2$
#command[check_disk]=/usr/local/nagios/libexec/check_disk -w $ARG1$ -c $ARG2$ -p $ARG3$
#command[check_procs]=/usr/local/nagios/libexec/check_procs -w $ARG1$ -c $ARG2$ -s $ARG3$

2.通过sed实现在搜索到某个字符串之后,在下一行插入字符串

[[email protected] ~]# sed -i /#command[check_procs]/acommand[check_disk]=/usr/local/nagios/libexec/check_disk -w 15\% -c 10\% -p / -C -w 15\% -c 10\% -p /mnt nrpe.cfg 
[[email protected] ~]# cat nrpe.cfg 
#command[check_users]=/usr/local/nagios/libexec/check_users -w $ARG1$ -c $ARG2$
#command[check_load]=/usr/local/nagios/libexec/check_load -w $ARG1$ -c $ARG2$
#command[check_disk]=/usr/local/nagios/libexec/check_disk -w $ARG1$ -c $ARG2$ -p $ARG3$
#command[check_procs]=/usr/local/nagios/libexec/check_procs -w $ARG1$ -c $ARG2$ -s $ARG3$
command[check_disk]=/usr/local/nagios/libexec/check_disk -w 15% -c 10% -p / -C -w 15% -c 10% -p /mnt   #黄色是原字符串,蓝色是要插入的字符串,红色表示的是在匹配的字符串的下一行插入

注意:这里没有s/原/新/的方法,也就是没有s这个参数,并且最后没有/.

 

文档创建时间:2018年8月2日18:48:24

以上是关于linux sed在某些字符串的下一行插入内容?sed在下一行插入?的主要内容,如果未能解决你的问题,请参考以下文章

sed 基础用法

Linux中的查找与替换

Sed在匹配行前后加入一行

sed 在匹配行前后添加内容

sed命令在文件中替换、插入

sed如何在文件的最后 插入一行文字