在多个文件夹中搜索字符串并将结果输出到 /tmp 的脚本或命令

问题描述

我正在使用此命令在存档中搜索字符串。 zgrep 'order-number' *fastbg* > /tmp/order-number.fastbg.txt

如何使用脚本或 find 命令搜索多个过时的目录(20210302、20210303、20210304..)。我仍然想在 /tmp 上输出结果。有人可以帮忙吗?

解决方法

这应该可以解决问题:

find /path/to/numbered/dirs -type f -name \*fastbg\* -print0|xargs -0 zgrep 'order-number' > /tmp/order-number.fastbg.txt

如果您不需要输出中的文件名,请使用上面的 zgrep -h