有誰知道如何使環境變量註冊爲 exec_command調用時使用SSHClient?設置會話變量爲paramiko會話
我正在使用基本腳本實例化SSHClient類,使用connect方法連接到另一臺計算機,然後使用exec_command方法發出命令。但是,當我嘗試發出命令時,似乎沒有任何環境變量被註冊。我可以做'ls'等基本的東西並看到stdout,但是當試圖運行已安裝的程序時,環境變量缺失的事實使得它們無法運行。在命令行中使用ssh執行相同的操作,因爲用戶的環境變量已設置。
#!/usr/bin/python
import paramiko
ssh.connect('mymachine',username='myname',password='pass')
stdin,stdout,stderr=ssh.exec_command('cd /myfolder/path')
stdin,stdout,stderr=ssh.exec_command('ls')
....
....
ssh.close()
注意:我無法在paramiko中更改我的目錄。我在單個ssh.exec_command('cd /dddd/ddd;ls')
後續命令中追加了cd
命令。我以ls
爲例,但我的實際跟進命令不同。
您是否試過通過['os.environ'](http://docs.python.org/2/library/os.html#os.environ)添加它們? – mgilson 2013-02-12 13:59:04
我正在設置'TZ'env變量以及:我們如何使用'os.environ'設置'TZ'env變量,如果'paramiko'中不支持?謝謝。 – 2014-01-04 20:39:41