Il prompt del terminale è incasinato dopo aver modificato il valore di PS1


9

Ho inserito con noncuranza un comando nel terminale che avrebbe dovuto essere in uno script di shell:

export PS1=$PATH:~/drush23/drush/

ora nel mio terminale invece di questo:

ubuntu@ip-10-16-134-18:/home/ubuntu$

Lo vedo:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/ubuntu/drush23/drush/

e quando cambio directory questa riga rimane sempre ... non so cosa fare

Ho byobu ...

Risposte:


13

$PS1è una variabile d'ambiente che dice alla tua shell come formattare il prompt. La modifica del valore con export, come hai fatto, si applica solo a quella sessione; così puoi semplicemente aprire una nuova shell (non una sub-shell) e vedere un prompt familiare.

Altrimenti, se vuoi davvero il tuo prompt in questa sessione stessa, riesegui semplicemente il file delle preferenze della shell. Per gli utenti di Bash, ovvero:

. ~/.bashrc

Non so se funzionerà (almeno, senza causare altri problemi) per Byobu; ma puoi semplicemente impostare il prompt su un valore sano come questo:

export PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

Oppure, se non vuoi o non puoi avere una richiesta di colore, una più semplice sarebbe:

export PS1='\u@\h:\w\$ '

dove si \utrova il tuo nome utente, \hè il tuo nome host ed \wè il percorso completo (logico) della directory di lavoro corrente.


non ero a conoscenza del controllo $ PS1 che ... grazie!
Moshe Shaham,

appena colpito nel terminale . ~/.bashrc. Reimposterà la PS1variabile e dovresti tornare al tuo prompt.
souravc,

@souravc Sei sicuro che non causerebbe problemi all'OP? sta usando Byobu.
Yatharth Agarwal

@YatharthROCK Non credo che causerebbe alcun problema. Cosa ti aspetti dal possibile problema?
souravc,

@souravc Siamo spiacenti, non ho pensato bene.
Yatharth Agarwal,

1

Puoi impostare PS1un valore ragionevole per questa sessione del Terminale usando:

export PS1=$'\h:\w\$'

Il vecchio valore dovrebbe essere ripristinato anche dopo aver chiuso e riavviato Terminal, un riavvio, ecc.


0

Ho avuto lo stesso problema. Ho usato PS1 per impostare il prompt su "Test" ..

Successivamente non sono riuscito a tornare al prompt colorato predefinito.

tuttavia stavo controllando qualche risposta in questo sito Web e ho dovuto verificare quale shell sto eseguendo.

Ho provato $ SHELL e è stato ripristinato il valore di prompt colorato predefinito.

"$ SHELL"

Non sono un professionista in questo. Questo è puramente accidentale, non so se funzionerà per te o no.

Ma vale la pena provare.


Puoi spiegare cosa hai fatto SHELL?
Stephen Rauch,

Non ho davvero idea di come abbia funzionato .. Nemmeno io ho modificato nulla relativo alla shell. Dai
Ravi Kiran

1
Cordiali saluti, questo esegue semplicemente una nuova shell. Se corri exit, tornerai al prompt incasinato.
NerdOfLinux,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.