1、代码
import paramiko
# 创建对象
client = paramiko.SSHClient()
# 进行验证,填写yes
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect("172.27.236.108", 22, "root", "1")
# stdin 标准输入
# stdout 标准输出
# stderr 错误信息
stdin, stdout, stderr = client.exec_command("whoami")
print(stdout.read())
2、输出
报错关键字:
- paramiko
- Exception ignored in: <function BufferedFile.del at 0x03A9D898>
- AttributeError: ‘NoneType’ object has no attribute ‘time’
b'root\n'
Exception ignored in: <function BufferedFile.__del__ at 0x03A9D898>
Traceback (most recent call last):
File "C:\Users\John\AppData\Local\Programs\Python\Python38-32\lib\site-packages\paramiko\file.py", line 66, in __del__
File "C:\Users\John\AppData\Local\Programs\Python\Python38-32\lib\site-packages\paramiko\channel.py", line 1392, in close
File "C:\Users\John\AppData\Local\Programs\Python\Python38-32\lib\site-packages\paramiko\channel.py", line 991, in shutdown_write
File "C:\Users\John\AppData\Local\Programs\Python\Python38-32\lib\site-packages\paramiko\channel.py", line 967, in shutdown
File "C:\Users\John\AppData\Local\Programs\Python\Python38-32\lib\site-packages\paramiko\transport.py", line 1901, in _send_user_message
AttributeError: 'NoneType' object has no attribute 'time'
Process finished with exit code 0
3、解决办法
ssh返回的结果缓冲释放过快,未读完,就产生报错了。
加一个sleep 1秒就可以解决。
import paramiko
import time
# 创建对象
client = paramiko.SSHClient()
# 进行验证,填写yes
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect("172.27.236.108", 22, "root", "1")
# stdin 标准输入
# stdout 标准输出
# stderr 错误信息
stdin, stdout, stderr = client.exec_command("whoami")
print(stdout.read())
time.sleep(1)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)