[paramiko] remote command info
Hi, I'm a paramiko's newbie. I started with a simple ssh connection and command execution like below: import sys import paramiko client = paramiko.SSHClient() client.load_system_host_keys() ip = 'ip_server' client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) client.connect(ip,port=22, username='my_user',password='**') i, o, e = client.exec_command('ls -la') print o.read() client.close() I don't understand the steps to exec multiple commands, like the example below. Es: if I exec before "cd /etc" command and after few time I want to exec a "ls" command. What I do? Sorry for my base English. Regards. B_and_s ___ paramiko mailing list paramiko@lag.net http://www.lag.net/cgi-bin/mailman/listinfo/paramiko
Re: [paramiko] remote command info
2010/1/27 james bardin > The short answer is, you don't. > Run your commands separately with exec_command(), and remove their > dependencies on one another, and you will be much happier. > > Ok. I find the example below: i, o, e = client.exec_command('cd /etc') i.write('ls\n') i.flush() I test it, but don't work. Waht do you think about it? You can get an interactive shell with invoke_shell(), but then you > have to script being "interactive" > I use it, but i don't like. Thank's jim. ___ paramiko mailing list paramiko@lag.net http://www.lag.net/cgi-bin/mailman/listinfo/paramiko
Re: [paramiko] remote command info
2010/1/27 Roman Yakovenko > > In Linux, there are few commands that have an option to change working > directory. For example "tar" has "--directory" option that will change > pwd for that process. May be you the commands you need to use have > such option too. > > Another valid option could be to generate a shell script, upload it to > a temporal directory and execute it. > I want use the paramiko library for manage CISCO device (I test the code on linux machine). In my first test I wrote: i, o, e = client.exec_command('command'+'command_1'+'command_2') but the CISCO devices have a limited buffer and I can't put all command in a only one time. I tested that solution: client.exec_command('cd /etc') i, o, e = client.exec_command('ls') print o.read() but the output is only a ls print of my home directory and not of /etc directory. There is a method to implement my issue. ___ paramiko mailing list paramiko@lag.net http://www.lag.net/cgi-bin/mailman/listinfo/paramiko