linux - 安排 cronjob 每周将文件复制到不同的位置
问题描述
我需要帮助来安排我的服务器上的 cron 以在一个月内每周将特定文件复制到不同的位置。
这是我想要实现的目标,
- 第 1 周 - 复制到位置 A
- 第 2 周 - 复制到位置 B
- 第 3 周 - 复制到位置 C
- 第 4 周 - 复制到位置 D
然后这项工作将每月重复一次,我计划使用cp -rf
命令覆盖旧文件。
有人可以阐明我如何实现这一目标吗?
解决方案
下面的示例将在每个月的1 日、8 日、15 日和 22 日的凌晨 1 点服务器时间运行 cronjobs。
0 1 1 * * rsync -avz /path/to/directory /path/to/destination/A
0 1 8 * * rsync -avz /path/to/directory /path/to/destination/B
0 1 15 * * rsync -avz /path/to/directory /path/to/destination/C
0 1 22 * * rsync -avz /path/to/directory /path/to/destination/D
cronjobs 的格式是:
+---------------- minute (0 - 59)
| +------------- hour (0 - 23)
| | +---------- day of month (1 - 31)
| | | +------- month (1 - 12)
| | | | +---- day of week (0 - 6) (Sunday=0 or 7)
| | | | |
* * * * * command to be executed
我建议使用rsync而不是 cp 命令。如果涉及的文件很多,您还可以在执行复制之前创建一个 ZIP 或 Tar。
谢谢!
推荐阅读
- reactjs - React 路由器 4 与 redux SPA 样板
- php - php/jquery:无法保存裁剪的图像
- google-colaboratory - Colab:上传目录中存在的文件
- c# - 如何在 Xamarin Android 中触发振铃模式更改事件
- .htaccess - 多个域加载相同的数据库导致加载内容出现问题
- node.js - NodeJS ESM Unexpected identifier express //不确定问题是否来自节点
- java - 编译 xamarin-android 应用程序时出现 java.exe 错误
- json - 如何在angular2应用程序中使用Node.js的读写属性删除和更新json格式的数据
- twitter - Tweepy:查找特定语言的所有推文
- haskell - getAuthEntity 失败“无法匹配预期类型”