fswatch + rsync 替代方案以更好地实施
fswatch + rsync alternative or better inplementation
我正在尝试查看文件夹及其子文件夹中文件的任何更改 (HTML/CSS/JS/Etc)。文件更改后,我想将其从远程服务器上传到已安装的驱动器。目前,我在终端中使用它:
fswatch -o ~/Desktop/Site/ | xargs -n1 sh ~/Documents/App\ Syncs/rsync_files.sh
rsync_files.sh:
rsync -rvzut --info=progress2 --delete-after --delete-excluded --exclude-from=/Users/ME/Documents/App\ Syncs/exclude_list.txt /Users/ME/Desktop/Site/ /Volumes/devroot$/Site;
我的想法是,每次文件结构发生变化时,fswatch 都会调用 rsync。它可以工作,但速度非常慢,尤其是在糟糕的连接上。
我的问题是,我这样做是否正确,或者是否有更好的解决方案来实现我想要完成的目标?我的 rsync 命令可以更好地优化吗?是否已经有一款应用程序可以为我做这件事?
基本上我想模仿 Dreamweaver 2014 中的文件面板,而不必使用 Dreamweaver。我的设置是 Sublime Text 3 和 Codekit 2。
我想这取决于瓶颈在哪里,你的问题中并不清楚。不过有一件事:如果连接是 "crappy",我会担心在尝试调整 rsync
.
之前修复连接
就fswatch
而言,您已经在使用-o
,因此我没有进一步提高其性能的方法。也许我会增加延迟值 (-l
):您问题中的命令将输出最大频率为 1 秒的事件。将其调整为更高的值:从与完成同步作业所用时间数量级相同的值开始。
就rsync
而言,您可能会发现一些改进的空间。开始问自己以下问题(然后 google):
rsync
是最佳选择吗?
- 整个文件复制 (
-W
) 有意义吗?
- 压缩 (
-z
) 有意义吗?
- 就地同步 (
--inplace
) 有意义吗?
如果您的连接 慢 ,请开始使用 -z
和 --inplace
并查看 rsync
性能是否提高。
我正在尝试查看文件夹及其子文件夹中文件的任何更改 (HTML/CSS/JS/Etc)。文件更改后,我想将其从远程服务器上传到已安装的驱动器。目前,我在终端中使用它:
fswatch -o ~/Desktop/Site/ | xargs -n1 sh ~/Documents/App\ Syncs/rsync_files.sh
rsync_files.sh:
rsync -rvzut --info=progress2 --delete-after --delete-excluded --exclude-from=/Users/ME/Documents/App\ Syncs/exclude_list.txt /Users/ME/Desktop/Site/ /Volumes/devroot$/Site;
我的想法是,每次文件结构发生变化时,fswatch 都会调用 rsync。它可以工作,但速度非常慢,尤其是在糟糕的连接上。
我的问题是,我这样做是否正确,或者是否有更好的解决方案来实现我想要完成的目标?我的 rsync 命令可以更好地优化吗?是否已经有一款应用程序可以为我做这件事?
基本上我想模仿 Dreamweaver 2014 中的文件面板,而不必使用 Dreamweaver。我的设置是 Sublime Text 3 和 Codekit 2。
我想这取决于瓶颈在哪里,你的问题中并不清楚。不过有一件事:如果连接是 "crappy",我会担心在尝试调整 rsync
.
就fswatch
而言,您已经在使用-o
,因此我没有进一步提高其性能的方法。也许我会增加延迟值 (-l
):您问题中的命令将输出最大频率为 1 秒的事件。将其调整为更高的值:从与完成同步作业所用时间数量级相同的值开始。
就rsync
而言,您可能会发现一些改进的空间。开始问自己以下问题(然后 google):
rsync
是最佳选择吗?- 整个文件复制 (
-W
) 有意义吗? - 压缩 (
-z
) 有意义吗? - 就地同步 (
--inplace
) 有意义吗?
如果您的连接 慢 ,请开始使用 -z
和 --inplace
并查看 rsync
性能是否提高。