python3传文件到linux服务器然后解压
2024-08-26 13:35:47
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import os
import paramiko
import time
from scp import SCPClient
#将脚本传到服务器,并解压
def transRemote(ip,user,password):
try:
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(ip, 22, username=user, password=password, timeout=200)
stdin, stdout, stderr=ssh.exec_command("pwd")
#path=stdout.read().strip("\n")
# 获取路劲
path= stdout.read().decode('utf-8').strip("\n")
#查看python版本
stdin, stdout, stderr=ssh.exec_command("python -V")
print(stdout.read().decode('utf-8'))
# pythonVsersion=stdout.read().strip("\n")
pythonVsersion = stdout.read().decode('utf-8').strip("\n")
scriptName="jixianjiancha.tar.gz"
if(len(pythonVsersion)==0):
scriptName="jixianjiancha.tar.gz"
else:
if(pythonVsersion.split()[1].startswith("3")):
scriptName="jixianjiancha2.tar.gz"
current_path=os.getcwd()
#print current_path
scpclient = SCPClient(ssh.get_transport(), socket_timeout=15.0)
scpclient.put('%s\\check\\%s'%(current_path,scriptName), '%s/jixianjiancha.tar.gz'%path)
print("[*]将脚本传送到远程服务器")
index=0
script_number=12
while(index<10):
stdin, stdout, stderr=ssh.exec_command('tar -xvf %s/jixianjiancha.tar.gz'%path)
time.sleep(2)
stdin, stdout, stderr=ssh.exec_command("ls %s"%(path))
scripts=len(stdout.read().decode('utf-8').strip("\n"))
if(scripts==12):
index=11
else:
index+=1
print("[*]在远程服务器上解压脚本")
ssh.close()
return True
except Exception as e:
print(e)
return False
if __name__ == '__main__':
transRemote('192.168.221.133','root','toor')
最新文章
- UVA - 11987 Almost Union-Find[并查集 删除]
- 使用node的插件UglifyJs来合并和压缩文件
- 基础知识系列☞MSSQL→约束
- Storm系统高可用性HA表现
- Java创建Web项目
- https原理:证书传递、验证和数据加密、解密过程解析
- Instruments 使用指南
- Random获得的随机数怎么样减少重复率
- Mac必备软件推荐
- [ An Ac a Day ^_^ ] hdu 1662 Trees on the level 数据结构 二叉树
- java集合小知识的复习
- 不正常退出vim产生swp文件的解决方法
- 解决UnicodeEncodeError: &#39;gbk&#39; codec can&#39;t encode character u&#39;\u25aa&#39; in position 344 : illegal multiby
- go语言生成uuid
- Integer与int有什么区别?
- [Flex] FlashBuilder 4.6运用标签嵌入字体方法
- Gson使用
- Linux工作环境搭建
- matlab中nargin函数的用法
- 將sql server 2008R2 Max memory 意外設為0
热门文章
- logo的一般做法
- C# 对IOC的理解 依赖的转移
- Luogu5591 小猪佩奇学数学 【单位根反演】
- js 的数组怎么push一个对象. Js数组的操作push,pop,shift,unshift JavaScrip
- PHP连接MySQL创建表
- various system release [online]
- “都是为了生活”小组 选题 Scrum立会报告+燃尽图 01
- MYSQL | ERROR 1305(42000) SAVEPOINT *** DOES NOT EXIST
- BAT 电脑名 用户名
- Java查询目录下的所有文件(包括子目录)