#!/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')

最新文章

  1. UVA - 11987 Almost Union-Find[并查集 删除]
  2. 使用node的插件UglifyJs来合并和压缩文件
  3. 基础知识系列☞MSSQL→约束
  4. Storm系统高可用性HA表现
  5. Java创建Web项目
  6. https原理:证书传递、验证和数据加密、解密过程解析
  7. Instruments 使用指南
  8. Random获得的随机数怎么样减少重复率
  9. Mac必备软件推荐
  10. [ An Ac a Day ^_^ ] hdu 1662 Trees on the level 数据结构 二叉树
  11. java集合小知识的复习
  12. 不正常退出vim产生swp文件的解决方法
  13. 解决UnicodeEncodeError: &#39;gbk&#39; codec can&#39;t encode character u&#39;\u25aa&#39; in position 344 : illegal multiby
  14. go语言生成uuid
  15. Integer与int有什么区别?
  16. [Flex] FlashBuilder 4.6运用标签嵌入字体方法
  17. Gson使用
  18. Linux工作环境搭建
  19. matlab中nargin函数的用法
  20. 將sql server 2008R2 Max memory 意外設為0

热门文章

  1. logo的一般做法
  2. C# 对IOC的理解 依赖的转移
  3. Luogu5591 小猪佩奇学数学 【单位根反演】
  4. js 的数组怎么push一个对象. Js数组的操作push,pop,shift,unshift JavaScrip
  5. PHP连接MySQL创建表
  6. various system release [online]
  7. “都是为了生活”小组 选题 Scrum立会报告+燃尽图 01
  8. MYSQL | ERROR 1305(42000) SAVEPOINT *** DOES NOT EXIST
  9. BAT 电脑名 用户名
  10. Java查询目录下的所有文件(包括子目录)