2012-10-18 43 views
0

目前,我想要刪除的每一行中的文本文件包含線路麻煩用grep -v

「事件/ d:X:Y:Z:pmts1 [122]:pmts2 [122]:漂移:托特/ d:S1:S2:S1Top:S1Bot:S2Top:S2Bot:logS2S1:pseudo_z:pseudo_z_s2" 。

我想我會通過以下能夠這樣很容易地用grep -v:從數據

grep -v "event/D:x:y:z:pmts1[122]:pmts2[122]:drift:Tot/D:S1:S2:S1Top:S1Bot:S2Top:S2Bot:logS2S1:pseudo_z:pseudo_z_s2" data.txt >> NewData.txt 

但是,命令似乎只是停留在一個無限循環或東西,沒有臺詞.txt被添加到NewData.txt。

有人能告訴我我做錯了什麼嗎?提前致謝!

回答

0

你可以把單引號的模式,如果第一個字符是一個雙引號「「」

+0

哦,不,這是一個錯字,我已經糾正了它感謝:,你可以直接使用-i標誌更改寫入您的文件! –

0

你需要使用\逃跑元字符嘗試:。

grep -v "event\/D:x:y:z:pmts1\[122\]:pmts2\[122\]:drift:Tot\/D:S1:S2:S1Top:S1Bot:S2Top:S2Bot:logS2S1:pseudo_z:pseudo_z_s2" file.txt > newfile.txt 

如果你有GNU sed雖然

sed -i '/event\/D:x:y:z:pmts1\[122\]:pmts2\[122\]:drift:Tot\/D:S1:S2:S1Top:S1Bot:S2Top:S2Bot:logS2S1:pseudo_z:pseudo_z_s2/d' file.txt