刪除命令是d,應該是取了delete操作的第一個字母吧。
使用的時候可以加入尋址地址的方式,找到要刪除的行,我們還是用以下的測試數據
比如我們現在要刪除掉第三行那個異類,那麼我們可以執行 sed '3d' testfile
如果你沒有指定行的話,那麼將會默認流中的數據都會被刪掉,例如sed 'd' testfile ,也不用截圖了,因爲什麼都沒有
比較常見的可能就是刪除一個行的區間 sed '2,5d' testfile
其實和之前的的替換一樣,使用'$',意思是到文件末尾,sed '3,$d' testfile
那麼你覺得這條是什麼意思呢?sed '$d' testfile ,好吧,就是把最後一條記錄刪除啦。
一般我們也不知道要刪除哪一行,所以模式匹配還是比較實用的 sed '/dog2/d' testfile
爲了測試刪除空行的功能,我在測試文件中加入一些空行,如下:
然後我要去掉這些空行,可以使用sed '/^$/d' filename.txt或者sed '/./!d' filename.txt
和替換一樣,功能比較強大的就是正則表達式的匹配啦 ,比如 sed '/^The/d' testfile 執行後就是那幾行空行啦。
NOTE:sed編輯器不會修改原始文件。你刪除的行只是從sed編輯器的輸出中消失了。