我有一个脚本,将文件从一个特定的目录(与rsync )上传到服务器,但同时另一个脚本将从服务器(也rsync和--delete标志)拉文件。
这意味着,当我向它添加大量文件并且rsync正在上传文件的过程中, 下载脚本也正在运行时,某些文件(尚未上传到服务器)将被删除。
有什么办法可以阻止吗? 我希望我的上传脚本和下载脚本同时工作。
这听起来像是在尝试执行双向同步,在这种情况下,最好使用专门为此devise的工具,如unison 。
让你的上传工作primefaces化。 例如,你可以将rsync上传到临时目录,并在完成时用mvreplace工作目录。 另一个尝试是使用版本控制来pipe理你的文件。 我build议git。
如果我正确地理解了这个问题,你可以简单地排除部分文件被下载。 这也将确保他们不被删除。 检查rsync手册页中的--temp-dir开关,了解如何指定在file upload时使用的临时目录。
如果您希望能够同时升级和下载文件,那么您将需要创build自己的rsync版本,并考虑到这一要求。