1
當談到編程時,我是一個初學者,我很感謝您願意提供的所有幫助。使用sed/awk/etc從包含任何其他文件中的字符串的文本文件中刪除行
這裏是我的問題......
我有很多在這行的,並且包含一些字符串(每行1串)一strings.txt一個的data.txt文件。
我想從data.txt中刪除所有行,如果它們包含string.txt中的任何字符串並將該新文件保存爲proc_data.txt。
我知道我可以使用sed來搜索並刪除一個或多個字符串,但有超過500個字符串需要在CLI中鍵入才能讓它......呃,你知道的。
什麼我試過到目前爲止
~$ for i in `cat strings.txt`; do sed '/${i}/d' data.txt -i.bak; done
,但它只是讓data.txt中的相同大小的備份。
我在做什麼錯?
謝謝你的回答,並指出我在另一個方向:) –
幫你一個忙[使用LC_ALL = C](http://www.inmotionhosting.com/support/website/ssh/speed-up -grep-searching-with-lc-all)(也可能是fgrep,如果你不使用正則表達式)。數量級更快。 – davemyron
@orangechicken:有趣的鏈接。修正了我的答案。 – Birei