目录
问题描述
工具介绍
讨论
首页 后端开发 Python教程 文件夹自动同步工具

文件夹自动同步工具

Jun 23, 2017 pm 04:29 PM
同步 工具 文件夹 自动

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

项目地址:

 


问题描述

在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

欢迎补充 

以上是文件夹自动同步工具的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

如何使用Composer解决WordPress安装和更新的复杂性问题 如何使用Composer解决WordPress安装和更新的复杂性问题 Apr 17, 2025 pm 10:54 PM

在管理WordPress网站时,常常会遇到安装、更新以及多站点转换等复杂操作。这些操作不仅耗时,而且容易出错,导致网站瘫痪。通过WP-CLI的core命令结合Composer,可以大大简化这些任务,提高效率和可靠性。本文将介绍如何使用Composer来解决这些问题,并提升WordPress管理的便捷性。

如何解决SQL解析问题?使用greenlion/php-sql-parser可以! 如何解决SQL解析问题?使用greenlion/php-sql-parser可以! Apr 17, 2025 pm 09:15 PM

在开发一个需要解析SQL语句的项目时,我遇到了一个棘手的问题:如何高效地解析MySQL的SQL语句,并提取其中的关键信息。尝试了多种方法后,我发现greenlion/php-sql-parser这个库能够完美解决我的需求。

如何解决Laravel中复杂的BelongsToThrough关系问题?使用Composer可以! 如何解决Laravel中复杂的BelongsToThrough关系问题?使用Composer可以! Apr 17, 2025 pm 09:54 PM

在Laravel开发中,处理复杂的模型关系一直是个挑战,特别是当涉及到多层级的BelongsToThrough关系时。最近,我在处理一个多级模型关系的项目中遇到了这个问题,传统的HasManyThrough关系无法满足需求,导致数据查询变得复杂且低效。经过一番探索,我找到了staudenmeir/belongs-to-through这个库,它通过Composer轻松安装并解决了我的困扰。

加速PHP代码检查:使用overtrue/phplint库的体验与实践 加速PHP代码检查:使用overtrue/phplint库的体验与实践 Apr 17, 2025 pm 11:06 PM

在开发过程中,我们常常需要对PHP代码进行语法检查(linting),以确保代码的正确性和可维护性。然而,当项目规模较大时,单线程的语法检查过程可能会变得非常缓慢。最近,我在项目中遇到了这个问题,尝试了多种方法后,最终找到了overtrue/phplint这个库,它通过并行处理大大提高了代码检查的速度。

解决数据库连接问题:使用minii/db库的实际案例 解决数据库连接问题:使用minii/db库的实际案例 Apr 18, 2025 am 07:09 AM

在开发一个小型应用时,我遇到了一个棘手的问题:需要快速集成一个轻量级的数据库操作库。尝试了多个库后,我发现它们要么功能过多,要么兼容性不佳。最终,我找到了minii/db,这是一个基于Yii2的简化版本,完美地解决了我的问题。

如何优化网站性能:使用Minify库的经验与教训 如何优化网站性能:使用Minify库的经验与教训 Apr 17, 2025 pm 11:18 PM

在开发网站的过程中,提升页面加载速度一直是我的首要任务之一。曾经,我尝试使用Minify库来压缩和合并CSS及JavaScript文件,以期提升网站的性能。然而,使用过程中遇到了不少问题和挑战,最终让我意识到Minify可能不再是最佳选择。下面我将分享我的使用经验,以及如何通过Composer安装和使用Minify的过程。

使用Composer解决CSS前缀问题:padaliyajay/php-autoprefixer库的实践 使用Composer解决CSS前缀问题:padaliyajay/php-autoprefixer库的实践 Apr 17, 2025 pm 11:27 PM

在开发一个前端项目时,我遇到了一个棘手的问题:需要手动为CSS属性添加浏览器前缀以确保兼容性。这不仅耗时,而且容易出错。经过一番探索,我发现了padaliyajay/php-autoprefixer库,它通过Composer轻松解决了我的困扰。

解决 Craft CMS 中的缓存问题:使用 wiejeben/craft-laravel-mix 插件 解决 Craft CMS 中的缓存问题:使用 wiejeben/craft-laravel-mix 插件 Apr 18, 2025 am 09:24 AM

在使用CraftCMS开发网站时,常常会遇到资源文件缓存的问题,特别是当你频繁更新CSS和JavaScript文件时,旧版本的文件可能仍然被浏览器缓存,导致用户无法及时看到最新的更改。这个问题不仅影响用户体验,还会增加开发和调试的难度。最近,我在项目中遇到了类似的困扰,经过一番探索,我找到了wiejeben/craft-laravel-mix这个插件,它完美地解决了我的缓存问题。

See all articles