How do I change directories using Paramiko? How do I change directories using Paramiko? python python

How do I change directories using Paramiko?


This guy had it figured out: http://www.vertigrated.com/blog/2010/02/python-remote-ssh-with-paramiko/

You just have to send multiple commands with one exec_command, such as:

myssh.exec_command('cd ..; pwd')

Then stdout.readlines() will return the directory that you changed to.


Well paramiko creates an instance of shell and all the commands that you wish to execute in paramiko have to be given in that instance of shell only.

For example:Let us say I have some folder in the directory I am in.

folder1folder2folder3

Now if I want to cd into folder 1 and make a directory there what I would do is:

ssh.exec_command('cd folder1;mkdir folder4')

if you write it like:

ssh.exec_command('cd folder1')ssh.exec_command('mkdir folder4')

you would get the result like

folder1folder2folder3folder4

as those were two different instances of the shell and would be independent in their function.


As of version 2.6, if you use the SFTPClient, the method to change directories is sftp = myssh.open_sftp() sftp.chdir('path/to/directory')