主题
想批量把某个文件上传到多台linux机器上;
拥有python环境及相关包
修改ssh端口、账户、密码、ip.txt文件、准备测试文件
测试效果
脚本具体内容:
https:/172.20.200.20/12
https:importparamikoimporttimefork inopen(r'D:/ip.txt'):ip=k.split("/")[1]print(ip,"is ok !")tran =paramiko.Transport((ip,22))tran.connect(username='root',password='123456')sftp =paramiko.SFTPClient.from_transport(tran)localpath ="D:/sh.sh"remotepath="/root/sh.sh"sftp.put(localpath,remotepath)tran.close()1234567891011121314
我的博客主旨:
🍀 微信二维码
x2675263825 (舍得), qq:2675263825。
🍀 微信公众号
《云原生架构师实战》
🍀 语雀
https:# encoding:utf-8importparamikoimportosHOST_IP='172.20.200.19'REMOTE_PATH='/root'REMOTE_FILENAME='test.txt'LOCAL_PATH='D:/'USERNAME='root'PASSWORD='123456'defremote_scp(host_ip,remote_path,local_path,file_name,username,password):t =paramiko.Transport((host_ip,22))t.connect(username=username,password=password) # 登录远程服务器sftp =paramiko.SFTPClient.from_transport(t) # sftp传输协议src =remote_path+'/'+file_namedes =local_path+'/'+file_namesftp.get(src,des)t.close()ifnotos.path.isdir(LOCAL_PATH):os.makedirs(LOCAL_PATH)ifnotos.path.isfile(LOCAL_PATH+'/'+REMOTE_FILENAME):fp=open(LOCAL_PATH+'/'+REMOTE_FILENAME,'w')fp.close()remote_scp(HOST_IP,REMOTE_PATH,LOCAL_PATH,REMOTE_FILENAME,USERNAME,PASSWORD)123456789101112131415161718192021222324252627282930
1