22
塊我有一個文本塊,看起來像這樣:使用SED刪除文本
<!-- BOF CLEAN -->
... a bunch of stuff
<!-- EOF CLEAN -->
我想刪除整個塊。什麼是sed命令?
塊我有一個文本塊,看起來像這樣:使用SED刪除文本
<!-- BOF CLEAN -->
... a bunch of stuff
<!-- EOF CLEAN -->
我想刪除整個塊。什麼是sed命令?
$ cat text
abc
<!-- BOF CLEAN -->
... a bunch of stuff
<!-- EOF CLEAN -->
def
$ sed '/<!-- BOF CLEAN -->/,/<!-- EOF CLEAN -->/d' text
abc
def
http://www.catonmat.net/blog/sed-one-liners-explained-part-three/
要刪除所有文字從開始,包括<!-- BOF CLEAN -->
,在結束與包括<!-- EOF CLEAN -->
,使用下面的sed命令:
sed -i '/<!-- BOF CLEAN -->/,/<!-- EOF CLEAN -->/d' file_name;
SED刪除了我文件!!我做了'sed'/^0.*$/d's1d13700.c',它向控制檯吐出正確的結果,然後我做了'sed'/^0.*$/d's1d13700.c> s1d13700.c'用結果覆蓋原始文件,文件完全變空! –
@ Zom-B在'sed ... s1d13700.c> s1d13700.c'中發生了什麼?在運行sed之前,shell首先創建一個新的空文件's1d13700.c',從而用相同的名稱覆蓋輸入文件。使用'sed -i.original ... s1d13700.c'來就地更改文件並將原始文件的備份創建爲's1d13700.c.original'。 –