我目前正在尝试使用更大的csv文件(3.000.000行)来填写大量的ids(〜5000).
我想要所有的csv行,包含id文件中的一个id.
我天真的做法是:
cat the_ids.txt | while read line do cat huge.csv | grep $line >> output_file done
但这永远是永远!
这个问题有更有效的方法吗?
解决方法
尝试
grep -f the_ids.txt huge.csv
此外,由于您的模式似乎是固定的字符串,提供-F选项可能会加快grep.
-F,--fixed-strings Interpret PATTERN as a list of fixed strings,separated by newlines,any of which is to be matched. (-F is specified by POSIX.)