我有超过 300K 行的 FILE_A 和超过 30M 行的 FILE_B。我创建了一个 bash 脚本,它将 FILE_A 中的每一行 grep 到 FILE_B 中,并将 grep 的结果写入一个新文件。
整个过程需要超过 5 个多小时。
我正在寻找有关您是否看到任何提高脚本性能的方法的建议。
我使用 grep -F -m 1 作为 grep 命令。FILE_A 看起来像这样:
123456789
123455321
Run Code Online (Sandbox Code Playgroud)
和 FILE_B 是这样的:
123456789,123456789,730025400149993,
123455321,123455321,730025400126097,
Run Code Online (Sandbox Code Playgroud)
因此,使用 bash 我有一个 while 循环,它选择 FILE_A 中的下一行,并在 FILE_B 中将其遍历。当在 FILE_B 中找到模式时,我将其写入 result.txt。
while read -r line; do
grep -F -m1 $line 30MFile
done < 300KFile
Run Code Online (Sandbox Code Playgroud)
非常感谢您的帮助。