使用exec_command执行多个命令

时间:2017-06-03 09:49:41

标签: python python-2.7 python-3.x

登录远程机器后我想" cd"到特定目录并在" exec_command"中执行命令使用paramico模块。但无法做到这一点。我正在使用&#34 ;;"在两个命令之间,但仍然无法获得预期的输出。

import paramiko

ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect("10.73.73.242", username="root", password="dangerous")
print 'running remote command'
stdin, stdout, stderr = ssh.exec_command("cd /usr/ABC/PGMS;pwd")
x = stdout.readlines()
print "VALUES",x
z=stderr.readlines()  
print "err are",z
stdin, stdout, stderr = ssh.exec_command("ls")
x = stdout.readlines()
print "VALUES ARE AGAIN",x
ssh.close()

这里我想将dir更改为目录" / usr / ABC / PGMS"执行" pwd"但它不起作用。对于做错了什么一无所知。

输出如下

  

运行远程命令

     

VALUES [' / root \ n']

     

错误是[' bash:第0行:cd:/ usr / ABC / PGMS /:没有这样的文件或目录\ n']

     

价值又是['桌面\ n','文档\ n',' autoinst.xml \ n',' bin \ n&# 39;,>' dup_rm_ordr.py \ n',' fullwrite.log \ n',' inst-sys \ n',' pexpect- 2.3 \ n',>' pexpect-2.3.tar.gz \ n',' read_print_matrix.py \ n',' remove_dup.py \ n' remove_dup.py \ n&#39 ;,>' runlog \ n']

仍然" pwd"显示/ root目录并列出/ root中的文件和目录。

0 个答案:

没有答案