过滤定位的输出,不显示 rsnapshot 中的重复项

过滤定位的输出,不显示 rsnapshot 中的重复项

当我在服务器上使用定位并且结果在我的rsnapshot 备份中时,我得到了所有这些重复项。

我可以使用 grep 过滤掉所有 rsnapshot 文件:

locate something_in_backup | grep -v /var/cache/rsnapshot

但这样我就会错过备份中来自其他服务器的文件。

我如何过滤输出以仅显示来自rsnapshot/daily.0/文件夹的结果?

答案1

您可以在 grep 命令中使用正则表达式:

locate something_in_backup | grep -v 'rsnapshot/\(hourly.[1-5]\|daily\|weekly\|monthly\)'

或者如果您不每小时备份一次:

locate something_in_backup | grep -v 'rsnapshot/\(daily.[1-7]\|weekly\|monthly\)'

注意管道和括号的正确转义

相关内容