a aa [lilibei@cricaas ~]$ sed '/^$/'d 1.txt aaa bbb ccc a aa #删除指定行 [lilibei@cricaas ~]$ sed '1,60'd /etc/passwd wanghantao:x:533:533::/home/wanghantao:/bin/bash liuqibao:x:534:526::/home/liuqibao:/bin/bash #删除3到最后一行 [lilibei@cricaas ~]$ sed '3,$'d /etc/passwd | wc -l 2
查找替换
1 2 3 4 5 6 7
sed '1,$s/nologin/JFT/g' /etc/passwd #替换的内容中含有/符号可以使用#或者@ sed '1,$s#/sbinnolgin#JFT#g' /etc/passwd #在最后一行中添加\tJFT sed 's/^.*$/&\tJFT/g' /etc/passwd #删除字母数字 sed -r 's/\w|\d//g' /etc/passwd
#打印第10行 sed -n '10'p file #打印1-10行 sed -n '1,10'p file #打印第10行到尾行 sed -n '10,$'p file #匹配功能,打印含有root的行 sed -n '/root/'p file #使用参数r支持正则 sed -nr '/ro*t/'p file #删除空行 sed '/^$/'d file #删除包含数字的行 sed -r '/\d/'d file #删除包含字母的行 sed '/[A-Za-z]/'d file #删除1-19行 sed '1,19'd file #在原文件进行操作(不推荐使用) sed -i '1,19'd file #替换功能 sed '1,10s/la/lal/g' file #整行替换为test sed 's/.^*/test/g' file #每一行后添加test,使用&符号 sed 's/^.*/&test/g' #删除每一行的数字 sed -r '/\d//g' #删除每一行的字母 sed '/[A-Za-z]/g' #删除每一行的非字母非数字 sed -r '/\W//g' #第一列和第十列互换 sed -r ''