Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $YECBGYFECGEAFWHA as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2

Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $BBWFDDBHHYHDXXAB as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2
Python怎么通过paramiko库实现远程执行linux命令_创想鸟

Python怎么通过paramiko库实现远程执行linux命令

(1)首先安装paramiko

pip install paramiko

(2)封装了以下类,可以直接拿来使用

import paramikoclass SSHClient(object):    def __init__(self,host,username,password,port=22):        self.__host=host        self.__username=username        self.__password=password        self.__port=port        self.__ssh=None        self.connect()    def __del__(self):        self.close()    def connect(self):        self.__ssh = paramiko.SSHClient()        self.__ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())        self.__ssh.connect(hostname=self.__host,port=self.__port,username=self.__username,password=self.__password)    def exec(self,cmd):        print(f"begin to run remote cmd: {cmd}")        stdin, stdout, stderr = self.__ssh.exec_command(cmd,timeout=1800)        returncode = stdout.channel.recv_exit_status()        output=stdout.read().decode('utf-8')        return output    def close(self):        self.__ssh.close()

(3)比如准备一个ip地址为192.168.1.12的linux虚拟机,然后直接按照如下方法使用上面封装的类即可实现远程执行linux命令

v0.dev v0.dev

Vercel推出的AI生成式UI工具,通过文本描述生成UI组件代码

v0.dev 261 查看详情 v0.dev

ssh=SSHClient(host="192.168.1.12",username="root",password="xxxxxx")output=ssh.exec("ifconfig")print(output)

(4)执行结果如下

begin to run remote cmd: ifconfigens33: flags=4163  mtu 1500        inet 192.168.1.12  netmask 255.255.255.0  broadcast 192.168.1.255        inet6 240e:3a1:da7:6590:b39f:e15:6b3d:7e7  prefixlen 64  scopeid 0x0        inet6 fe80::4a67:131d:9133:acdf  prefixlen 64  scopeid 0x20        ether 00:0c:29:58:d8:4c  txqueuelen 1000  (Ethernet)        RX packets 195340  bytes 148862388 (141.9 MiB)        RX errors 0  dropped 0  overruns 0  frame 0        TX packets 163425  bytes 20837281 (19.8 MiB)        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0lo: flags=73  mtu 65536        inet 127.0.0.1  netmask 255.0.0.0        inet6 ::1  prefixlen 128  scopeid 0x10        loop  txqueuelen 1000  (Local Loopback)        RX packets 32  bytes 2592 (2.5 KiB)        RX errors 0  dropped 0  overruns 0  frame 0        TX packets 32  bytes 2592 (2.5 KiB)        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0virbr0: flags=4099  mtu 1500        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255        ether 52:54:00:e8:3f:5c  txqueuelen 1000  (Ethernet)        RX packets 0  bytes 0 (0.0 B)        RX errors 0  dropped 0  overruns 0  frame 0        TX packets 0  bytes 0 (0.0 B)        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

以上就是Python怎么通过paramiko库实现远程执行linux命令的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/746677.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
[windows工具]PDFOCR识别重命名工具1.3 版本使用教程及注意事项
上一篇 2025年11月25日 18:03:39
夸克浏览器老司机模式如何解除
下一篇 2025年11月25日 18:03:43

相关推荐

发表回复

登录后才能评论
关注微信