sed命令d

sed命令d

sed的d指令使用不好,是一个很容易犯错的指令,因为当多个指令里包含d指令时,d后面的指令是不会执行的,如:

root@bwhhkle:~# cat lines.bak 
1
2
3
# 执行如下命令后不会有任何输出,虽然有p指令,但p在d指令后并不会执行
sed -n 'n;d;p;q' lines.bak
# 而当没有d指令时则会执行p和q指令,输出如下
root@bwhhkle:~# sed -n 'n;p;q' lines.bak 
2