Quando uso un comando drush per fare qualcosa su una macchina remota, ricevo il seguente messaggio:
bash: drush: comando non trovato
Qual è il problema?
Quando uso un comando drush per fare qualcosa su una macchina remota, ricevo il seguente messaggio:
bash: drush: comando non trovato
Qual è il problema?
Risposte:
Questo messaggio proviene dalla macchina remota lamentando che non capiva dove trovare l' drush
eseguibile, non Drush lamentandosi che non riusciva a trovare il (sotto) comando che potresti provare a dare, anche se la punteggiatura suggerisce quest'ultimo. (Se bash:
significa che Bash ti sta trasmettendo un messaggio, allora drush:
dovrebbe significare la stessa cosa - se c'è coerenza. Ma in realtà è destinato a significare drush:
l'oggetto del messaggio, non la fonte del messaggio che ti passa bash:
. essere più chiaro se il secondo :
fosse rimosso.)
Drush accede al tuo computer remoto su ssh, ma non è un normale login interattivo, quindi non genera il file .bash_profile. Tuttavia, genera il file .bashrc.
Aggiungi il percorso di trascinamento (escluso drush stesso, includendo solo la directory che contiene drush) alla variabile PATH nel tuo .bashrc remoto e tutto dovrebbe andare bene. Ad esempio, potrebbe apparire così:
PATH=$PATH:/usr/local/zend/bin
[ -z "$PS1" ] && return
. Alcune piattaforme usano questo per salvare se in esecuzione in modalità non interattiva. Ubuntu, ad esempio, lo inserisce nel tuo .bashrc iniziale. Se imposti il PERCORSO, devi assicurarti di impostarlo prima di qualsiasi condizionale come questo che potrebbe forzare un'uscita anticipata.
.bashrc
prima della riga # If not running interactively, don't do anything case $- in *i*) ;; *) return;; esac
su Ubuntu 14.04