Python脚本:把本地文件实时更新到服务器上

复制代码
# 如果没有安装paramiko,用pip install paramiko安装
import paramiko, os, time

def
update(addr, usr, pasw, fn, target_path): trans = paramiko.Transport((addr, 22)) trans.connect(username=usr, password=pasw) sftp = paramiko.SFTPClient.from_transport(trans) sftp.put(fn, target_path) def keep_update(addr, usr, pasw, fn2target_paths, if_stop=None, call_back=None): last_modified_times = {i: None for i in fn2target_paths} while True: for i in fn2target_paths: modified_time = os.stat(i).st_mtime if (not last_modified_times[i]) or modified_time > last_modified_times[i]: last_modified_times[i] = modified_time update(addr, usr, pasw, i, fn2target_paths[i]) print(i+':', time.asctime()) if call_back: call_back() if if_stop and if_stop[0]: break time.sleep(0.2)


if __name__ == '__main__':
keep_update(ip, user_name, passwrd, {
filepath1: server_filepath1,
filepath2: server_filepath2,
})
复制代码

 

posted @   小鱼圆又圆  阅读(89)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示