我有一个脚本用于备份我的图像并提醒我脚本的状态,该脚本每 5 分钟运行一次。但是,我想弄清楚如何识别 rsync 何时成功,但没有执行任何操作(没有传输文件),因此我无法在发生这种情况时通知我。因此,第 37 行应该仅在文件实际传输时打印。
答案1
使用 rsync 的 --stats 参数并解析其输出。例如:
transferred=$(rsync -ar --stats $src $dest | awk '/files transferred/ {print $5}')
我有一个脚本用于备份我的图像并提醒我脚本的状态,该脚本每 5 分钟运行一次。但是,我想弄清楚如何识别 rsync 何时成功,但没有执行任何操作(没有传输文件),因此我无法在发生这种情况时通知我。因此,第 37 行应该仅在文件实际传输时打印。
使用 rsync 的 --stats 参数并解析其输出。例如:
transferred=$(rsync -ar --stats $src $dest | awk '/files transferred/ {print $5}')