当前位置: 首页 > news >正文

做app_需要先做网站吗东莞营销型网站

做app_需要先做网站吗,东莞营销型网站,推广赚钱 美团,如何做好网站内容在Python中实现Windows两个服务器之间的文件夹同步,包括文件新增、修改和删除的同步,可以使用paramiko库进行SSH连接以及SFTP传输,并结合文件大小和时间戳判断文件是否发生过变化。以下是包含删除文件同步逻辑的完整脚本示例: im…

在Python中实现Windows两个服务器之间的文件夹同步,包括文件新增、修改和删除的同步,可以使用paramiko库进行SSH连接以及SFTP传输,并结合文件大小和时间戳判断文件是否发生过变化。以下是包含删除文件同步逻辑的完整脚本示例:

import os
import paramiko# 定义源与目标服务器信息
src_host = 'source_server_ip'
src_user = 'source_username'
src_password = 'source_password'
src_folder = '/path/to/source/folder'dst_host = 'destination_server_ip'
dst_user = 'destination_username'
dst_password = 'destination_password'
dst_folder = '/path/to/destination/folder'def sync_files(sftp_src, src_path, sftp_dst, dst_path):# 遍历源目录下的所有项(文件或子目录)for src_name in sftp_src.listdir_attr(src_path):src_item_path = os.path.join(src_path, src_name.filename)dst_item_path = os.path.join(dst_path, src_name.filename)if S_ISDIR(src_name.st_mode):  # 如果是目录if not sftp_dst.exists(dst_item_path):  # 目录不存在于目标服务器,则创建sftp_dst.mkdir(dst_item_path)sync_files(sftp_src, src_item_path, sftp_dst, dst_item_path)else:  # 是文件if not sftp_dst.exists(dst_item_path):  # 文件不存在于目标服务器,直接上传sftp_dst.put(src_item_path, dst_item_path)else:  # 文件存在时比较大小和时间戳dst_stat = sftp_dst.stat(dst_item_path)if src_name.st_size != dst_stat.st_size or src_name.st_mtime != dst_stat.st_mtime:# 大小或时间戳不同,更新文件sftp_dst.remove(dst_item_path)sftp_dst.put(src_item_path, dst_item_path)# 处理源服务器上已删除但目标服务器上仍存在的文件for dst_name in sftp_dst.listdir_attr(dst_path):dst_item_path = os.path.join(dst_path, dst_name.filename)if not sftp_src.exists(os.path.join(src_path, dst_name.filename)):# 源服务器上不存在此文件,从目标服务器上删除sftp_dst.remove(dst_item_path)def main():ssh_src = paramiko.SSHClient()ssh_dst = paramiko.SSHClient()# 自动添加主机密钥到known_hostsssh_src.set_missing_host_key_policy(paramiko.AutoAddPolicy())ssh_dst.set_missing_host_key_policy(paramiko.AutoAddPolicy())ssh_src.connect(src_host, username=src_user, password=src_password)ssh_dst.connect(dst_host, username=dst_user, password=dst_password)sftp_src = ssh_src.open_sftp()sftp_dst = ssh_dst.open_sftp()sync_files(sftp_src, src_folder, sftp_dst, dst_folder)sftp_src.close()sftp_dst.close()ssh_src.close()ssh_dst.close()if __name__ == "__main__":main()

这个脚本首先遍历源文件夹中的所有文件和子目录,并根据文件状态进行相应操作。接着,它会检查目标文件夹中是否存在源文件夹中已经删除的文件,并执行删除操作以保持两台服务器上的文件内容一致。

遇到问题

AttributeError: ‘SFTPClient‘ object has no attribute ‘exists‘问题解决-CSDN博客

http://www.yayakq.cn/news/655412/

相关文章:

  • 石基网站建设wordpress 科技联盟
  • 网站包括什么网站建设违法行为
  • 海南做公司网站seo自学教程
  • 昆明云南微网站制作哪家好网站点击代码
  • 免费图纸网站济南做网站公司有哪些
  • 旅游网站开发参考文献互联网项目推广
  • 电商平台网站建设多少钱公司网站建设策划方案
  • 商城网站建设套餐报价新开的公司怎么做网站
  • 二级域名网站可以做360推广公司网站建设多少钱需要
  • 肥城网站建设流程wordpress更改主站点
  • 单位网站建设工作总结做网站构思
  • 枣庄建设网站wordpress 搜索主题
  • 吉他谱网站如何建设运营笔记 wordpress
  • 辽阳微网站建设专做机械零配件的网站
  • 哈尔滨精品建站做网站怎么买服务器吗
  • 大型网站建设地址网站空间管理平台
  • 学校网站建设模板重庆网站制作设计
  • 楚雄网站开发免费无线
  • 电子商务网站建设考试如何做公司网站的
  • 南阳网站seo公司内网建设网站需要什么条件
  • 建设局网站港府名都白云定制型网站建设
  • 专业制作网站 郑大连市建设工程网官网
  • 网站建设和维护合同公众号开发难吗
  • 岳阳网站建设一站式服务荣耀官方网站
  • 青岛高端网站建设公司wordpress 附件 函数
  • 江西网站开发联系方式网站系统制作
  • WordPress完美建站安徽安庆天气预报
  • 电子科技 深圳 网站建设网站宽度
  • linux服务器WordPress建站教程手机网站开发怎么样
  • 公众号开发网站公司网站建设找业主签字模板