sed '1p' /etc/hosts
可以发现所有的行都被显示出来了(第1行重复2次)。
正确的用法应该添加 -n 选项,这样就可以只显示第1行了:
sed -n '1p' /etc/hosts
行号可以是连续的行号,如打印passwd第3到第6行账户的信息:
sed -n '3,6p' /etc/passwd
多个指令可以使用分号隔离,如打印passwd第3行和第6行账户的信息:
sed -n '3p;6p' /etc/passwd
'/[0-9]/p' 打印包含数字的行
'/[0-9]+/' 打印包含连续数字的行
打印偶数行
sed -n '2~2p' /etc/passwd
打印奇数行
sed -n '1~2p' /etc/passwd
打印bash结尾的行
sed -n '/bash$/p' /etc/passwd
打印bin开头的行
sed -n '/^bin/p' a.txt
输出文件的行数
sed -n '$=' a.txt