sed

定址的方法 1.数字 2.正则
       数字(行号):十进制数
        1   单行                       
            #sed -n '1p' passwd      p是打印函数
         
        1,3 范围 从第一行到第三行      
            #sed -n '1,3p' passwd
        
         2,+4   匹配行后若干行         
        
         4,~3  从第四行到下一个3的倍数行
        
         1~3    第一行起每间隔三行的行
        
         $  尾行
        
         1! 除了第一行以外的行
    
    正则:
       正则必须用//包裹起来
       扩展正则需要用 -r 参数或转移

[root@localhost sed]# cat test.txt
11111111
11111111
11111111
22222222
33333333
44444444

#1.删除除第一行以外的
>[root@localhost sed]# sed -e  '1!d' test.txt
11111111
#2.打印出除第一行以外的
>[root@localhost sed]# sed -n  '1!p' test.txt
11111111
11111111
22222222
33333333
44444444.
cat file.txt
TS
Beijing,CN
.TE
Shanghai,CN
guangzhou,CN
shenyang,CN

[root@localhost sed]# sed -e '2,$d' file.txt
.TS

删除所有的行
d
只删除第一行
1d
使用寻址符号$,删除最后一行
$d
删除空行,正则表达式必须封闭在斜杠//当中
/^$/d
删除.TS 和.TE 标记的tbl 输入
/^\.TS/,/^\.TE/d
删除第五行到结尾所有的行
5,$d
混合使用行地址和模式地址
sed ‘1,/^$/d' file.txt
删除除了那些行以外的行
1,5!d

你可能感兴趣的:(sed)