我对 Linux 比较陌生,我正在研究用于计划备份的 CronTab。我想出了如何使用;and执行多个连续作业&&,但我不确定依赖项如何影响序列。
我的 cron 工作如下所示:
# Every day at 0:00 (reboot server and do the hourly backup procedure).
0 0 * * * sh shutdown.sh && sh backup.sh ; sh nas.sh ; sh ftp.sh ; sh startup.sh
Run Code Online (Sandbox Code Playgroud)
我想要发生的是运行 shutdown.sh 并在成功时继续序列,但如果失败则取消它。我担心它只会跳过sh backup.sh然后继续序列。
它会按预期工作吗?如果没有,类似的事情shutdown && (backup ; nas ; ftp ; startup)可能吗?
Spa*_*awk 10
为什么不使用一些您知道会起作用或会失败的虚拟命令来测试它呢?
$ ls foo && echo ok1 ; echo ok2
ls: cannot access foo: No such file or directory
ok2
$ ls foo && (echo ok1 ; echo ok2)
ls: cannot access foo: No such file or directory
Run Code Online (Sandbox Code Playgroud)
所以看起来你的直觉是正确的,你需要第二种结构。
正如mikeserv所建议的那样,对于一般测试,您可以使用true(或:) 和false,而不是ls不存在的文件。因此,
$ false && echo ok1 ; echo ok2
ok2
$ false && (echo ok1 ; echo ok2)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4423 次 |
| 最近记录: |