使用SSHClient对象的这个方法执行例如ls,pwd等命令的时候,都执行的还不错。
但是cd /path这个命令就有点问题了,发现cd到其他路径下,但是使用pwd发现还是在登录的时候的默认路径,/home/<user>
相当于没有执行cd命令,这个时候就要把后续的想要执行的命令和cd放在同一个字符串中传入exec_command方法中才会生效。
例如:
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect('IP', username='username', password='password', timeout=5)
client.exec_command('cd /home/<user>/xxx/yyy; ls -al')
这时会列出yyy的文件列表
本文详细阐述了使用SSHClient对象执行cd命令时遇到的问题及解决方案,重点在于将cd命令与后续命令合并执行,确保路径正确切换。通过示例代码展示了解决方法,有助于提升SSH远程操作效率。

1835

被折叠的 条评论
为什么被折叠?



