2014-02-06 98 views
1

刪除特定的行我已經嘗試使用sed命令從文件中刪除特定行,但似乎並不在我的系統工作正常(CentOS版本6.3(決賽)。sed命令不能按預期工作從文件

我FILE1.TXT包含以下數據

line1 
line2 
line3 
line4 
line5 

現在我嘗試以下命令從文件中刪除第三線。

$ sed '3d' file1.txt 

和上面COMM的輸出並且是

line1 
line2 
line4 
line5 

但是,當我檢查原始文件,那麼它似乎沒有刪除。第三條線在那裏。

因此,任何人有想法爲什麼sed不工作?

回答

2

讓它在線sed的:

sed -i.bak '3d' file1.txt 
+2

確定它的工作原理,所以基本上'sed'命令的工作安全首先意味着它採取原始文件的備份,然後從原來的右刪除..感謝很多 –

+0

是的,這是正確的話,你會看到帶'.bak'擴展名的原始文件備份。 – anubhava

+0

@anubhava:但是這個命令在busybox的sed中不起作用,您應該使用sed -i'3d'file1.txt –