Drush commands not executing using Paramikoपैरामीको का उपयोग करके मैं निर्देशिका कैसे बदलूं?
मैंने पैरामीको का उपयोग करते हुए एक लगातार त्रुटि संदेश के बारे में उपरोक्त प्रश्न पोस्ट किया। मुझे नहीं लगता कि यह मेरे अगले प्रश्न से संबंधित है, लेकिन यह हो सकता है।
मैं पैरामीको का उपयोग करके एसएसएच के माध्यम से सफलतापूर्वक अपने सर्वर से कनेक्ट कर सकता हूं। मैं ls या pwd जैसे कमांड निष्पादित कर सकता हूं। जो मैं नहीं कर सकता वह निर्देशिका बदलना है। उदाहरण के लिए मैं "cd .." कमांड भेज सकता हूं, लेकिन जब मैं "pwd" के साथ अनुवर्ती करता हूं तो यह दिखाता है कि मैंने निर्देशिकाएं नहीं बदली हैं। यह सिर्फ प्रारंभिक निर्देशिका जब मैं लॉगिन में मैं कर रहा हूँ सूचीबद्ध करता है।
>>> stdin, stdout, stderr = myssh.exec_command("pwd")
>>> stdout.readlines()
['/big/dom/home/myid\n']
>>> stdin, stdout, stderr = myssh.exec_command("cd ../")
>>> stdout.readlines()
[]
>>> stdin, stdout, stderr = myssh.exec_command("pwd")
>>> stdout.readlines()
['/big/dom/home/myid\n']
>>>
Am मैं गलत समझ यहाँ क्या चल रहा है? क्या मुझे निर्देशिकाओं को बदलने में सक्षम नहीं होना चाहिए? या अगर मैं कर सकता हूं, तो क्या मुझे exec_command का उपयोग करने के अलावा इसे किसी अन्य तरीके से करना चाहिए? -
मैं एक 7 घंटे के लिए अपने ही सवाल का जवाब नहीं कर सकते, तो यहाँ जवाब है:
यह आदमी था यह पता लगा: http://www.vertigrated.com/blog/2010/02/python-remote-ssh-with-paramiko/
तुम बस कई भेजने के लिए ऐसी ही एक exec_command साथ आदेश,:
myssh.exec_command ('सीडी ..; pwd')
फिर stdout.readlines() होगा उस निर्देशिका को वापस करें जिसे आपने बदल दिया था।
संभावित डुप्लिकेट [पैरामीको में एक सत्र में आप एकाधिक कमांड कैसे निष्पादित करते हैं? (पायथन)] (https://stackoverflow.com/questions/6203653/how-do-you-execute-multiple-commands-in-a-single- सत्र-in-paramiko-python) – tripleee