执行安静 rsync 时记录任何错误或警告的正确方法是什么?
这是我目前从我的 crontab 运行的:
gsutil -m -q rsync -r -C /mount1/share/folder gs://my-bucket-1/folder/ > /mount2/share/folder/gsutil.log
由于日志文件始终是完全空的并且我正在上传 TB 的数据,我开始认为甚至可能会抑制错误和警告。
执行安静 rsync 时记录任何错误或警告的正确方法是什么?
这是我目前从我的 crontab 运行的:
gsutil -m -q rsync -r -C /mount1/share/folder gs://my-bucket-1/folder/ > /mount2/share/folder/gsutil.log
由于日志文件始终是完全空的并且我正在上传 TB 的数据,我开始认为甚至可能会抑制错误和警告。
在意识到这与您如何将 stdout 和/或 stderr 通常通过管道传输到文件有关之后,答案就在这个现有的线程中:如何将 stdout 和 stderr 重定向到文件
因此,尽可能多地记录到一个日志文件中的简单解决方案可能类似于:
gsutil -d rsync [src] [dst] &> [logfile]
...在哪里-d
启用调试输出。我发现这是显示受错误影响的文件的唯一方法,例如CommandException: 3 files/objects could not be copied
. 请注意,这会-d
暴露身份验证凭据。