के लिए सेटिंग सत्र चर 0 एसएसएच क्लाइंट का उपयोग करते समय exec_command कॉल के लिए पंजीकृत पर्यावरण चर बनाने के लिए कोई भी जानता है?पैरामीको सत्र
मैं एक मूल स्क्रिप्ट का उपयोग कर रहा हूं जो एसएसएच क्लाइंट क्लास को तुरंत चालू करता है, कनेक्ट विधि का उपयोग कर किसी अन्य कंप्यूटर से कनेक्ट होता है, फिर exec_command विधि का उपयोग करके आदेश भेजता है। हालांकि, जब मैं कमांड जारी करने का प्रयास करता हूं तो पर्यावरण चर में से कोई भी पंजीकृत नहीं होता है। मैं 'एलएस' जैसी बुनियादी चीजें कर सकता हूं और 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.en वातावरण) के माध्यम से जोड़ने का प्रयास किया है? – mgilson
मैं 'TZ' env वैरिएबल को भी सेट करना चाहता हूं: | 'Os.en वातावरण' का उपयोग करके 'TZ' env चर सेट करने के बारे में हम कैसे जाते हैं, अगर यह 'paramiko' में समर्थित नहीं है ?? धन्यवाद। –