我對unix完全陌生,我試圖弄清楚如何從文件目錄中刪除包含部分字符串的行。我已經設法從我讀過的內容中拼出一段腳本,但問題是它合併了行並且不保留回車符。Unix Bash防止sed合併行?
命令:
grep -l "apple" tmp/* -R | xargs -I'{}' sed -i '/apple/d' '{}'
文件:
1.txt
applepie
green
blue
2.txt
applepie
green
blue
輸出:
1.txt
greenblue
2.txt
greenblue
w ^爲了保持綠色和藍色作爲單獨的線條,我需要改變帽子嗎?
注意:我不確定它是否有所作爲,但我在Windows上使用cygwin。
如果MSWIndows與1.txt和2.txt有關,則使用'dos2unix * .txt'。祝你好運。 – shellter
@shellter我不明白dos2unix合併行嗎?我需要保持它們分開 – nickyb