जब मैं किसी रिमोट मशीन पर कुछ करने के लिए ड्रश कमांड का उपयोग करता हूं, तो मुझे निम्न संदेश मिलता है:
bash: drush: कमांड नहीं मिला
समस्या क्या है?
जब मैं किसी रिमोट मशीन पर कुछ करने के लिए ड्रश कमांड का उपयोग करता हूं, तो मुझे निम्न संदेश मिलता है:
bash: drush: कमांड नहीं मिला
समस्या क्या है?
जवाबों:
यह संदेश दूरस्थ मशीन से है कि यह समझ में नहीं आया कि drush
निष्पादन योग्य को कहां से ढूंढना है , न कि ड्रश ने शिकायत की कि यह (उप) कमांड नहीं मिल सकता है जिसे आप इसे देने की कोशिश कर रहे हैं, भले ही विराम चिह्न बाद का सुझाव दे। (यदि bash:
इसका अर्थ है कि बैश आपको संदेश भेज रहा है, तो drush:
इसका मतलब वही होना चाहिए - यदि कोई संगति है। लेकिन वास्तव में इसका मतलब यह है कि drush:
यह संदेश का विषय है, न कि संदेश का स्रोत bash:
आपके पास से गुजरा है । यदि दूसरा :
हटा दिया गया तो स्पष्ट हो ।)
Drush ssh पर आपकी रिमोट मशीन में लॉग इन करता है, लेकिन यह एक सामान्य इंटरैक्टिव लॉगिन नहीं है, इसलिए यह .bash_profile स्रोत नहीं करता है। हालाँकि, यह .bashrc फ़ाइल का स्रोत है।
अपने दूरस्थ .Bashrc में PATH वैरिएबल में ड्रश पाथ जोड़ें (ड्रू ही नहीं, जिसमें ड्रश युक्त डायरेक्टरी भी शामिल है)। उदाहरण के लिए, यह इस तरह दिख सकता है:
PATH=$PATH:/usr/local/zend/bin
[ -z "$PS1" ] && return
:। यदि गैर-संवादात्मक मोड में चल रहा है, तो कुछ प्लेटफ़ॉर्म इसका उपयोग करते हैं। उदाहरण के लिए, उबंटू इसे आपके प्रारंभिक .bashrc में रखता है। यदि आप अपना पैट सेट करते हैं, तो आपको यह सुनिश्चित करने की ज़रूरत है कि आप इसे किसी भी सशर्त से पहले सेट करें जैसे कि यह जल्दी बाहर निकलने के लिए मजबूर कर सकता है।
.bashrc
लाइन से पहले पथ को संपादित करना था # If not running interactively, don't do anything case $- in *i*) ;; *) return;; esac