Domanda

Come posso ricaricare .bash_profile dalla riga di comando?Posso fare in modo che la shell riconosca le modifiche .bash_profile uscendo e rientrando ma vorrei poterlo fare su richiesta.

È stato utile?

Soluzione

È sufficiente digitare source ~/.bash_profile

In alternativa, se vi piace il risparmio sequenze di tasti è possibile digitare . ~/.bash_profile

Altri suggerimenti

. ~/.bash_profile

Basta assicurarsi che non si dispone di eventuali dipendenze sullo stato attuale in là.

È sufficiente digitare:

. ~/.bash_profile

Tuttavia, se si desidera fonte che venga eseguito automaticamente quando il terminale si avvia invece di correre ogni volta che si apre terminale, si potrebbe aggiungere . ~/.bash_profile in file ~/.bashrc.

Nota:

Quando si apre un terminale, inizia terminali bash in (non-login) modalità interattiva, il che significa che sarà fonte ~/.bashrc.

~/.bash_profile proviene solo da bash quando ha iniziato a Modalità di accesso interattivo . Questo è in genere solo quando si effettua il login alla console ( Ctrl + Alt + F1 .. F6 ), o la connessione tramite ssh.

È inoltre possibile utilizzare questo comando per ricaricare il ~ / .bash_profile per quell'utente. Assicurarsi di utilizzare il trattino.

su - username

Mi piace il fatto che dopo aver appena modificato il file, tutto quello che dovete fare è digitare:

. !$

Questo il file che aveva appena modificato nella storia fonti. Vedere Qual è botto dollaro in bash .

  1. Salva .bash_profile file
  2. home directory di Goto utente digitando cd
  3. Ricaricare il profilo con . .bash_profile

Se non ti dispiace perdere la storia del vostro terminale shell corrente si potrebbe anche fare

bash -l

Questa sarebbe sborsare il vostro guscio e aprire un altro processo figlio di bash. Il parametro -l dice a bash per l'esecuzione come una shell di login, questo è necessario perché Bash_profile non verrà eseguito come una shell non di login, per maggiori informazioni su questo leggi qui

Se si vuole sostituire completamente la shell corrente si può anche fare:

exec bash -l

Quanto sopra non forcella shell corrente ma sostituirlo completamente, in modo che quando si digita exit sarà completamente terminare, piuttosto che cadere alla shell precedente.

Aggiungere alias bashs="source ~/.bash_profile" nel tuo file bash.Quindi puoi chiamare bashs dalla prossima volta

devi solo digitare . ~/.bash_profile

fare riferimento: https://superuser.com/questions/46139/what-does-source-do

se il .bash_profile non esiste si può provare a eseguire il seguente comando:

. ~/.bashrc 

o

 source ~/.bashrc

al posto di .bash_profile. Potete trovare ulteriori informazioni su bashrc

Ho voluto inviare una risposta rapida che durante l'utilizzo source ~/.bash_profile o le risposte di cui sopra opere, una cosa da ricordare è che questo ricarica solo il tuo profilo bash nella scheda corrente o la sessione si sta visualizzando. Se si desidera caricare il tuo profilo di bash su ogni scheda / shell, è necessario inserire manualmente questo comando in ciascuno di essi.

Se si utilizza iTerm, è possibile utilizzare CMD⌘ + Maiusc + I per inserire un comando in tutte le schede attuali . Per terminale può essere utile fare riferimento a questa problema ;

Io uso Debian e posso semplicemente digitare exec bash per raggiungere questo obiettivo. Non posso dire se funzionerà su tutte le altre distribuzioni.

Sono in esecuzione Sierra, e stava lavorando su questo per un po '(cercando tutte le soluzioni consigliate). Sono diventato confuso così alla fine provato a riavviare il computer! Ha funzionato

La mia conclusione è che a volte un hard reset è necessario

alias reload!=". ~/.bash_profile"

o se i registri Vuoi inserire tramite funzioni

function reload! () {
    echo "Reloading bash profile...!"
    source ~/.bash_profile
    echo "Reloaded!!!"
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top