python远程控制

标签(空格分隔): 远程Linux


python远程控制:方案:

  • Paramiko

    Pexpect(主要Linux机器)

安装使用:pip install paramiko

  • 注意在安装的时候,会有比较慢因为:pip在美国的,而且有一些加密文件,所有会比较慢,所以我们可以设置一个超时时间;

    2.保证有一台Linux主机;

    3.保证ssh服务开启:用putty、或者:xshell连接试试看;
import paramiko
#创建SSHClient 实例对象
ssh=paramiko.SSHClient()
#调用方法,表示没有存储远程机器的公钥,允许访问
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
#连接远程机器,地址,端口,用户名密码
ssh.connect('192.168.199.236',22,'root','111111')
#创建目录;
cmd = 'mkdir jcy2'
ssh.exec_command(cmd)
#如果命令行跨行
cmd='''echo '123
45678
90abc'
>myfile'''
ssh.exec_command(cmd)
#获取命令行的执行结果
cmd ='cat myfile'
stdin,stdout,stderr =ssh.exec_command(cmd)
print(stdout.read()+stderr.read())
ssh.close()
  • 注意点:

    exec_command每次执行都会打开一个新的channel,执行;

    2.新的环境,不再上次执行的环境里面

    3.所以我们不能多次调用,达到多次执行的目的

例如:如下代码:

ssh.exec_command('pwd')
ssh.exec_command('mkdir jcy3')
ssh.exec_command('cd jcy3')
stdin,stdout,stderr =ssh.exec_command('pwd') print(stdout.read())
ssh.close()

linux 命令:free查看内存信息;

我们以后可以在代码里面每隔5分钟,看一下内存的情况;

  • 如下是传输文件到远程:
import paramiko
#创建SSHClient 实例对象
ssh=paramiko.SSHClient()
#调用方法,表示没有存储远程机器的公钥,允许访问
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
#连接远程机器,地址,端口,用户名密码
ssh.connect('192.168.199.236',22,'root','111111')
sftp=ssh.open_sftp()
sftp.put('ftp1.py','home/stt/ftp1.py')
sftp.close()

python远程操作服务器的更多相关文章

  1. paramiko模块(远程操作服务器)

    paramiko模块(远程操作服务器) django+paramkio实现远程某些服务器执行命令+上传文件 用于帮助开发者通过代码远程连接服务器,并对服务器进行操作. pip3 install par ...

  2. [ PyQt入门教程 ] PyQt+socket实现远程操作服务器

    来需求了..干活啦.. 需求内容 部分时候由于缓存刷新.验证码显示不出来或者浏览器打不开或者打开速度很慢等原因,导致部分测试同事不想使用浏览器登录服务器执行命令.期望有小工具可以替代登录浏览器的操作, ...

  3. Java可以远程操作服务器的协议笔记

    1.SCPClient(本地复制到远程.远程复制到本地.目前未看到可以远程操作文件) 2.SMB协议(可以远程操作文件:新增.修改) 3.SFTPv3Client(可以远程操作文件:新增.修改)

  4. python远程登录服务器(paramiko模块安装和使用)

    转自:http://www.jb51.net/article/46285.htm 一:简介 由paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器 ...

  5. 如何使用python远程操作linux

    在云服务测试中,往往需要我们进入云服务内容进行相关内容的测试.这测试可以使用平台自身的noVNC.外部辅助xshell等工具连接到云服务内部进行测试.但是在如此反复的测试操作中,就需要用到自动化测试方 ...

  6. ssh远程操作服务器

    登录方式 ssh account@192.168.xxx.xxx 输入密码 远程上传下载文件 上传: scp filepath acount@192.168.xxx.xxx:path filepath ...

  7. C# C/S WPF 远程操作服务器上面的文件

    作的时候用的是WPF,需要做一个上传附件的功能,服务器上有一个文件夹,附件都上传到里面,只知道URL路径. 文件夹是在服务器上的IIS里面(就比如说你发布一个网站,把文件夹建在网站下面,当然这个网站啥 ...

  8. 通过ssh实现远程登陆服务器!

    通过ssh实现远程登陆前提是服务器已经开启ssh服务,至于怎么开启,可以参看上一篇“Linux服务器开启ssh服务,实现ssh远程登陆!”! 使用ssh登陆时,输入主机(linux的ip地址),账号, ...

  9. 远程管理服务器--批量管理服务器,vps

    一般大型的企事业单位都有自己的服务器,但是服务器一般都放在机房,辐射较大,噪音大,如何能有效的避免这一情况呢?哈哈,那就来个远程桌面,远程操作服务器吧. 一.使用 iis7远程连接管理工具工具下载官网 ...

随机推荐

  1. php 目录

    1.laravel pswd  oauth2 2.理解二叉树 3.IOC容器 4.微信支付 4.1 微信支付申请 5.DI 6.支付宝 支付H5 7.html 转 word 8.php-fpm 启动详 ...

  2. 写一个小demo过程中遇到的各种问题 学生管理考勤系统(网页模拟)

    添加与新增一些小玩意的1.0.3版本:传送门 各位带哥,这不是你们要的c++.java.c#作业哈 课上要求做个小作业,学生管理考勤系统,原本想着是个练手的好机会,结果只证实了我还是个弟中弟. 设想的 ...

  3. Appium——主从控制执行

    1.客户端(Eclipse)机器A, 服务端(appium.Genymotion)机器B 2.设置Appium,Server Address为192.168.17.123,重新启动Appium 3.在 ...

  4. 读取配置文件properties的几种方式

    介绍几种读取方式:参考:https://www.cnblogs.com/sebastian-tyd/p/7895182.html .基于ClassLoder读取配置文件 注意:该方式只能读取类路径下的 ...

  5. 为什么我希望用C而不是C++来实现ZeroMQ

    原文在这里 开始前我要先做个澄清:这篇文章同Linus Torvalds这种死忠C程序员吐槽C++的观点是不同的.在我的整个职业生涯里我都在使用C++,而且现在C++依然是我做大多数项目时的首选编程语 ...

  6. java中线程池的使用

    public static ExecutorSevice newSingleThreadExecutor() public static ExecutorSevice newFixedThreadPo ...

  7. maven使用fingbugs插件

    <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>findbugs-maven-plu ...

  8. UIPanGestureRecognizer translateInView, locationInView

    假设在panGesture的回调事件里已经拿到了panGestureRecognizer CGPoint point = [panGestureRecognizer locationInView:se ...

  9. DevExpress控件TExtLookupComboBox实现多列模糊匹配输入的方法

    本方案不需要修改控件源码,是完美解决支持多列模糊匹配快速输入的最佳方案!!   1.把列的Properties属性设置为ExtLookupComboBox. Properties.Incrementa ...

  10. python catch socket timeout

    python catch socket timeout import socket try: # do something. except socket.timeout as e: # socket ...