Python调用paramiko模块实现远程管理多台server
2023-09-27 14:25:13 时间
Python中的paramiko是一个很实用的模块,通过此模块。能够远程操控多台server。无需在server上安装不论什么东西。仅仅须要在代码运行机器上有Python,paramiko环境就能够了,对于须要多台server协同工作或者要管理多台server的情况下很有帮助。
下面为代码演示样例
#!/usr/bin/env python # -*- coding:utf-8 -*- import paramiko #远程控制多台測试server。用来启动測试相关脚本和程序 ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) print '開始启动測试程序............................' #连接192.168.0.1 ssh.connect(ip,port,username, password) #启动 stdin, stdout, stderr = ssh.exec_command("cd /home/..../;rm -rf ./*;ls -l") print stdout.readlines() stdin, stdout, stderr = ssh.exec_command("cd /home/..../;./startup.sh;ps -ef | grep java | grep -v grep") print stdout.readlines() ssh.close() #连接192.168.0.2 ssh.connect(ip,port,username, password) #启动 stdin, stdout, stderr = ssh.exec_command("cd /home/..../;rm -rf ./*;ls -l") print stdout.readlines() stdin, stdout, stderr = ssh.exec_command("cd /home/..../;./startup.sh;ps -ef | grep java | grep -v grep") print stdout.readlines() ssh.close() print '启动測试程序成功............................'
使用说明:
1.最好把每次要运行的一系列相关的命令放到一个exec_commmand中运行。由于exec_commmand运行完成后会自己主动跳转
2.有些错误是捕捉不到的。比方切换到一个不存在的文件夹,我碰到这个问题的时候调试了1个小时
3.仅仅对linuxserver有效
相关文章
- 【Python开发】网页爬取心得
- Anaconda虚拟环境下更换python版本【不论升版本、降版本都使用conda install python命令】【注意:修改版本后原来使用pip安装的包会被删掉,无法使用】
- Python之异常处理合集
- Python总结,字符串的常用操作
- 使用Python,SMTP发邮件到qq邮箱(文本/超链接/图片/表格/附件表格)
- 第3.2节 Python列表简介
- Python pandas.read_csv函数方法的使用
- 「python」实用的Scrapy框架安装指南,开始你的第一个专案-第2篇
- Python之可迭代对象、迭代器、生成器
- Python基础(三):PyCharm安装和使用
- Python:从零搭建Redis-Scrapy分布式爬虫
- AIOHTTP - Asynchronous HTTP Client/Server for asyncio and Python.