"-bash: ls: comando non trovato"

24

Ho installato l'aggiornamento più recente su OS X Lion (10.7). Dopo averlo fatto, il mio terminale non riconoscerà i normali comandi. Ho digitato ls e ottenuto:

-bash: ls: command not found

Ho pensato di provare ad aggiungere usr / bin al mio percorso, ma non riesco a trovare .bash_profile per modificarlo poiché digitando edit .bash_profile non funzionerà. Non riesco a impostare il Finder per mostrare tutti i file poiché il mio terminale non riconoscerà i comandi necessari per farlo.

che cosa devo fare?

    
posta LuxuryMode 23.08.2011 - 03:14
fonte

8 risposte

34

Poiché mancano due comandi qualcosa "stompa" il tuo percorso.

Prima di fare qualcosa di grosso, dare il via a un backup potrebbe essere prudente.

Il percorso predefinito su Mac OS X 10.7 (Lion) è simile al seguente:

PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

Se ripristini il percorso digitando il precedente in una finestra della shell, e quindi digitando export PATH , dovrebbe risolvere quella finestra.

Quindi puoi iniziare lì e vedere cos'altro potrebbe essere sbagliato e sistemarlo nei tuoi file punto di avvio o altrove viene definito.

    
risposta data 23.08.2011 - 03:47
fonte
8

Questo dovrebbe risolvere il problema in modo completo e permanente.

per prima cosa, esporta i percorsi dell'ambiente usando il comando sotto nel terminale.

export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/b‌​in

ora hai i comandi che vuoi. (ad esempio, prova ls . Vedrai che il comando funziona). Ma questo è solo per la sessione corrente. Se chiudi il terminale e ne apri uno nuovo, avrai il problema precedente. Per rendere permanente questa modifica, usa il comando di sotto,

vai alla home directory

cd ~

apri il file .bash_profile in nano / vim (sto usando nano qui)

nano .bash_profile

Questo aprirà un editor nano. In una nuova riga, incolla quanto segue;

export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:$PATH

premi 'control' + 'o' per salvare (WriteOut) e 'control' + 'x' per uscire da nano.

Tutto fatto! Ora prova i comandi.

    
risposta data 13.07.2017 - 13:36
fonte
1

Mi sembra che /etc/profile non sia stato eseguito all'avvio della shell. È il file di avvio globale responsabile dell'inizializzazione di PATH. Verifica se /etc/profile esiste ed è leggibile ed eseguibile con il seguente comando:

. /etc/profile

Se non è presente, dovrai ripristinarlo da un backup o da un'altra macchina con Lion installato, o installare di nuovo Lion. Se esiste ma non è eseguibile, prova a utilizzare Utility Disco per riparare le autorizzazioni del disco.

Se esiste ed è eseguibile (e contiene del codice), potrebbe non essere avviato quando è previsto o lo script di avvio potrebbe in qualche modo sovrascriverlo. Per ovviare al problema, prova a inserire . /etc/profile all'inizio di ~/.bash_profile per assicurarti che venga eseguito. Se il problema persiste, aggiungi echo $PATH dopo averlo eseguito per verificare se PATH è stato inizializzato correttamente. Se lo fosse, qualcosa nel tuo script lo sta cambiando.

Ecco i contenuti predefiniti di /etc/profile :

# System-wide .profile for sh(1)

if [ -x /usr/libexec/path_helper ]; then
    eval '/usr/libexec/path_helper -s'
fi

if [ "${BASH-no}" != "no" ]; then
    [ -r /etc/bashrc ] && . /etc/bashrc
fi

path_helper costruisce il PATH predefinito. Potresti provare a eseguire

unset PATH; /usr/libexec/path_helper -s

per vedere cosa produce.

In ogni caso, se il problema non è nei tuoi script di avvio, ti preghiamo di contattare il supporto Apple link o segnala un bug all'indirizzo link per far sapere a Apple che c'è un problema.

    
risposta data 26.08.2011 - 01:33
fonte
0

Per verificare che sia effettivamente un problema con il tuo percorso, qual è il risultato di /bin/ls ?

Se funziona, allora dovresti ripristinare il tuo percorso a /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin , puoi usare ad esempio VI il cui percorso è (sul mio mac) /usr/bin/vi .

    
risposta data 23.08.2011 - 15:27
fonte
-1

Stavo provando ad impostare il mio percorso di sviluppo sulle variabili di envoronment quando ciò accadeva. Quindi ho spostato il file .profile e .bash_profile nel cestino e ho provato di nuovo e ha funzionato.

    
risposta data 14.01.2016 - 07:03
fonte
-1

La reimpostazione del terminale funzionerà. Ripristina le configurazioni di base.

Ripristina il tuo terminale. Dalla navigazione in alto vai a Shell > > Ripristina.

    
risposta data 04.05.2018 - 12:04
fonte
-2

Sembra che la variabile PATH sia corrotta. Verifica se per caso stai modificando la variabile PATH all'interno del tuo script o semplicemente controlla il PERCORSO pronunciando echo $ PATH e assicurati che nulla sia corrotto.

    
risposta data 04.01.2019 - 17:07
fonte
-3

puoi esportare il percorso come segue:

export PATH = $ PATH: / bin: / usr / local / bin

    
risposta data 29.04.2016 - 19:33
fonte

Leggi altre domande sui tag