gpt4 book ai didi

linux - 复制最近 14 天内修改过的文件

转载 作者:IT王子 更新时间:2023-10-29 00:53:23 24 4
gpt4 key购买 nike

我有一个服务器,它的文件时不时地被修改。

我们希望有一个脚本或 cron 作业每 7 天运行一次,并找到在过去 14 天内修改或创建的所有 php 文件,并将它们放入服务器上的 tar 或 zip 文件中,以便它可以下载。

此命令找到正确的文件:

find . -name "*.php" -mtime -14 -print

我还需要做什么?

最佳答案

如果您从 find 输出的文件列表是正确的,只需将其通过管道传输到 tar:

find . -name "*.php" -mtime -14 -print | xargs tar cvf backup.tar

你应该检查 man 中的 tar 选项。您可能想要使用例如 -p(保留权限),只需在 man 中寻找有用的选项并使用您需要的任何东西。

[附录] 如果您的文件可能包含空格或换行符,建议 -print0 和 xargs -0 使用空字符作为分隔符:

find . -name "*.php" -mtime -14 -print0 | xargs -0 tar cvf backup.tar

并将其添加到 cron,如果您的发行版支持它,最简单的方法是将您的脚本放入:

/etc/cron.weekly

否则你必须修改crontab:

crontab -e

然后放一行:

0 3 * * 6 <user> <your script>

它在每个星期六凌晨 3 点运行一个脚本,最后一个脚本是星期几,0 或 7 是星期日。

man 5 crontab:

 field          allowed values
----- --------------
minute 0-59
hour 0-23
day of month 1-31
month 1-12 (or names, see below)
day of week 0-7 (0 or 7 is Sun, or use
names)

关于linux - 复制最近 14 天内修改过的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9981570/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com