我有一个超过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
答案 0 :(得分:3)
使用-f
的{{1}}选项将单词列表用作模式列表:
grep
您可能还需要grep -v -f 20000-words.txt 50000-lines.txt
或-w
个开关来匹配整个单词或禁用单词的正则表达式解释。