Cambia prompt dei comandi - Le variabili sono letterali e le modifiche a .bashrc o .bash_profile non fanno la differenza

4

Cercando di cambiare il mio prompt dei comandi in OS X 10.8 / Mountain Lion. Le modifiche a ~ / .bashrc e ~ / .bash_profile non fanno alcuna differenza. Come:

export PS1="\W \$"

Per impostazione predefinita, il nome host ("\ h \%"). Anche se provo a impostare PS1 nel terminale, cambia ma visualizza le variabili letteralmente, come di seguito:

ws10% PS1="\W \$"
\W $

(con ws10 come nome host)

Il mio file ~ / .bashrc:

export PS1="\W \$ "

Qualche idea? Continuo a perdersi quando eseguo il cd su e giù per la struttura delle directory! Molte grazie.

    
posta John Harper 17.08.2012 - 16:42
fonte

4 risposte

5

Tipicamente su Mac OS X, solo .bash_profile è in esecuzione quando si avvia un nuovo terminale. Una soluzione comune è l'origine di un file nell'altro, ad esempio in ~/.bashrc :

[ -r ~/.bash_profile ] && source ~/.bash_profile

A parte questo, il tuo esempio funziona perfettamente per me quando inserisco .bash_profile. Se riscontri ancora problemi, forse stai trascurando qualcos'altro?

    
risposta data 17.08.2012 - 16:55
fonte
2

Ho copiato il mio .bashrc e .profile da un vecchio Mac e ho visto questo problema. Si è giunti al fatto che .bashrc stava controllando uno specifico nome di emulazione terminale "xterm-color". In Mountain Lion, xterm-color è stato rinominato in xterm-16color e è stato aggiunto un nuovo emulatore xterm-256color:

controlla se il tuo .bashrc ha questo controllo:

case "$TERM" in
    xterm-color) color_prompt=yes;;
esac

e aggiungi i nuovi nomi di termini, quindi assomiglia a questo:

case "$TERM" in
    xterm-color)    color_prompt=yes;;
    xterm-16color)  color_prompt=yes;;
    xterm-256color) color_prompt=yes;;
esac
    
risposta data 11.12.2012 - 21:06
fonte
0

Il mio .bashrc dice:

PS1="\[\e[0;32m\]\u@monkey:\w\$ \[\e[0m\]" 

vale a dire. nessuna 'esportazione' davanti all'impostazione PS1. Aiuta? Sicuramente ricevo il prompt che ho specificato. Inoltre questa linea

source ~/.bashrc

in .bash_profile dovrebbe anche aiutarti a impostare il prompt in .bashrc.

    
risposta data 17.08.2012 - 17:12
fonte
0

In .bash_profile aggiungi alla fine della riga seguente:

[ -r ~/.profile ] && source ~/.profile

Questo ha funzionato di nuovo per me sotto Mountain Lion.

    
risposta data 17.08.2013 - 15:27
fonte

Leggi altre domande sui tag