sed
1### sed ### 2 31、关键字取行 4sed -n '/jpinsz/p' test.txt 5sed -n '/^d/p' test.txt 6 72、根据行数取行 8sed -n '2,5p' test.txt 9 [root@JP1 tmp]# sed -n '2,5p' test.txt 10 bin:x:1:1:bin:/bin:/sbin/nologin 11 daemon:x:2:2:daemon:/sbin:/sbin/nologin 12 adm:x:3:4:adm:/var/adm:/sbin/nologin 13 lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin 143、sed 删除,删掉包含关键词的行 15 sed '/^$/d' test.txt ## 删除空行 16 174、sed –i 直接修改文件内容 18 [root@JP1 tmp]# cat jp.txt 19 i am jpinsz 20 jpinsz 21 jpinsz test 22 good boy 23 24 [root@JP1 tmp]# sed -i '/jpinsz/d' jp.txt 25 [root@JP1 tmp]# cat jp.txt 26 good boy 27 285、内容替换 29 [root@JP1 tmp]# sed -n 's#kk#HH#gp' a 30 HH qq HH 31 HH jp qq HH 32 HH qq QQ HH 33 HH QQ QQ HH HH 34 [root@JP1 tmp]# sed -n 's#HH#BB#gp' a > b 35 [root@JP1 tmp]# cat b 36 kk qq BB 37 kk jp qq BB 38 kk qq QQ BB 39 kk QQ QQ BB kk [root@JP1 tmp]# sed -n 's#HH#AA#2p' test2 HH qq AA HH jp qq AA HH qq QQ AA HH QQ QQ AA HH 40 [root@JP1 tmp]# ifconfig enp0s3|sed -nr 's#^.*net (.*) net.*$#\1#gp' 41 10.0.0.13 42 436、取行数 44 [root@JP1 tmp]# sed -n "$=" /etc/passwd 45 437、特定行数插入字符串 例子:如果遇到连接SSH反应慢的问题,请在所有被管理的机器上提前执行如下命令: sed -ir '13iUseDNS no\nGSSAPIAuthentication no\n' /etc/ssh/sshd_config /etc/init.d/sshd reload 解析:-ir 将目标文件‘/etc/ssh/sshd_config’备份为/etc/ssh/sshd_configr,然后‘13i'是13行开始收入后面的字符串