paramiko 远程登录主机实现用户切换 su
更新:HHH   时间:2023-1-7


import paramiko
import time
def verification_ssh(host,username,password,port,root_pwd,cmd):
    
    s=paramiko.SSHClient() 
    s.load_system_host_keys() 
    s.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    s.connect(hostname = host,port=int(port),username=username, password=password)
    ssh = s.invoke_shell()
    time.sleep(0.1)
    ssh.send('su - \n')
    buff = ''
    if  not buff.endswith('Password: '):
        resp = ssh.recv(9999)
buff +=resp
ssh.send(root_pwd)
ssh.send('\n')
    buff = ''
    if  not buff.endswith('# '):
        resp = ssh.recv(9999)
        buff +=resp
    buff = ''
    stdin, stdout, stderr = s.exec_command(cmd)
    result = stdout.read()
    print result 
    stdin,stdout,stderr = s.exec_command('echo hello')
    print stdout.read()
    s.close()
if __name__ == "__main__":
    verification_ssh('192.168.1.105','gyh','123456','22','123456','id')
返回开发技术教程...