Коли я використовую команду drush, щоб зробити щось на віддаленій машині, я отримую таке повідомлення:
bash: drush: команда не знайдена
В чому проблема?
Коли я використовую команду drush, щоб зробити щось на віддаленій машині, я отримую таке повідомлення:
bash: drush: команда не знайдена
В чому проблема?
Відповіді:
Це повідомлення з віддаленої машини скаржиться, що він не розуміє, де знайти drush
виконуваний файл, а не Друш скаржиться, що не може знайти команду (sub), яку ви, можливо, намагаєтесь надати, хоча пунктуація підказує останню. (Якщо bash:
означає, що Bash передає вам повідомлення, то це drush:
повинно означати те саме - якщо є якась послідовність. Але насправді це означає, що drush:
це тема повідомлення, а не джерело повідомлення, яке передається bash:
вам. Це було б бути чіткішим, якщо другого :
було видалено.)
Запишіть журнали у віддалену машину через ssh, але це не звичайний інтерактивний логін, тому він не джерело .bash_profile. Однак він джерело файлу .bashrc.
Додайте шлях drush (не враховуючи самого drush, просто включаючи каталог, що містить drush) до змінної PATH у вашому віддаленому .bashrc, і все повинно бути добре. Наприклад, це може виглядати приблизно так:
PATH=$PATH:/usr/local/zend/bin
[ -z "$PS1" ] && return
. Деякі платформи використовують це для вирішення проблем, якщо вони працюють в неінтерактивному режимі. Наприклад, Ubuntu ставить це у свій початковий .bashrc. Якщо ви встановите свій PATH, вам потрібно переконатися, що ви встановили його перед будь-якими умовними умовами, такими як ця, яка може змусити швидкий вихід.
.bashrc
до рядка # If not running interactively, don't do anything case $- in *i*) ;; *) return;; esac
на Ubuntu 14.04