Come ricaricare .bash_profile dalla riga di comando?
-
25-09-2019 - |
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.
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 .
- Salva .bash_profile file
- home directory di Goto utente digitando
cd
- 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!!!"
}