我有一个超过50000行的主文件,我的要求是从实际文件中删除大约20000行。为此,我使用了grep-vE命令,该命令将错误显示为参数太多。我正在使用sed命令删除那些使用for循环的命令。但是,由于20000个sed命令将要初始化,因此删除这些命令需要很长时间。我需要帮助尽快做这件事。
for i in `cat 20000-words.txt`; do
sed -i -e "/$i/ d" 50000-lines.txt
done
最佳答案
使用-f
的grep
选项将单词列表用作模式列表:
grep -v -f 20000-words.txt 50000-lines.txt
您可能还需要
-w
或-F
开关来分别匹配整个单词或禁用单词的regex解释。