视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
文件夹自动同步工具
2020-11-27 14:24:05 责编:小采
文档


这是我之前开发的文件夹自动同步工具,主要实现开发机和服务器之间的文件夹同步。

项目地址:

问题描述

在windows下修改代码,到服务器上去编译,但每次都要通过winscp之类的工具拖拽上去(当然你也可以通过scp命令行的方式)。

每次修改的文件很少,而且可能位于不同的目录,每次都重复覆盖文件的操作感觉比较麻烦,所以开发了这个自动文件夹自动同步工具。

当然这个工具也可以用于两台linux服务器之间的文件夹同步。

工具介绍

该工具的原理就是监控本地文件状态,根据捕捉到的事件触发相关的动作,通过命令操作实现文件夹的同步。

配置文件说明:

host : 服务器地址
sshPort : 服务器ssh端口
user : 用户名
password : 密码
localDir : 需要同步的文件夹
remoteDir : 同步到服务器的文件夹
fileExcept :不同步的文件

示例代码配置文件:

<config><host>127.0.0.1</host><sshPort>22</sshPort><user>root</user><password>123456</password><localDir>.</localDir><remoteDir>/tmp/t1</remoteDir><fileExcept><file>f1.txt</file><file>data/f2.txt</file></fileExcept></config>

依赖库:

paramiko :ssh操作库

watchdog :用于监控本地文件夹状态

可以通过pip方式安装,命令如下:

pip install paramiko
pip install watchdog

工具使用示例如下:

$ python autoSync.py default.xml

讨论

1、如果想以单独的exe文件共享给朋友该怎么操作?

可以通过pyinstaller打包为单独的二进制文件,命令如下: pyinstaller.py -F autoSync.py

exe位于 autoSync/dist 目录下

pyinstaller地址:

好,就这些了,希望对你有帮助。

本文github地址:

20170617_文件夹自动同步工具.rst

欢迎补充

下载本文
显示全文
专题