虚拟化容器,大数据,DBA,中间件,监控。

Shell 四剑客之 sed a i 添加新行

21 12月
作者:admin|分类:脚本编程

简介


sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。

 

sed使用参数


a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行);
i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);

 

[root@www ~]# cat sed.sh 
192.168.179.1.15
192.168.179.1.16
192.168.179.1.17

[root@www ~]# sed '/1.17/amytest' sed.sh  --使用a然后再匹配到的1.17下面插入一行test
192.168.179.1.15
192.168.179.1.16
192.168.179.1.17
mytest


[root@www ~]# sed '/1.17/imytest' sed.sh   --在其前一行插入使用i
192.168.179.1.15
192.168.179.1.16
mytest
192.168.179.1.17

[root@www ~]# sed  '/1.17/i \ mytest' sed.sh   --加上空格要使用转义\
192.168.179.1.15
192.168.179.1.16
 mytest
192.168.179.1.17


[root@www ~]# sed -e  '/1.17/atest' -e '/1.17/imytest' sed.sh 
192.168.179.1.15
192.168.179.1.16
mytest
192.168.179.1.17
test




在第二行后(亦即是加在第三行)加上『drink tea?』字样!
[root@wwww~]# nl /etc/passwd | sed '2a drink tea'
1 root:x:0:0:root:/root:/bin/bash
2 bin:x:1:1:bin:/bin:/sbin/nologin
drink tea
3 daemon:x:2:2:daemon:/sbin:/sbin/nologin
.....(后面省略).....


那如果是要在第二行前
nl /etc/passwd | sed '2i drink tea'

 

浏览573 评论0
返回
目录
返回
首页
Shell 四剑客AWK第一集 Shell 四剑客之 sed s替换内容以及n p