Shell 四剑客之 sed a i 添加新行
简介
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'
目录 返回
首页