Ho un .bashrc
file di una riga nella mia directory home:
alias countlines='find . -type f -print0 | xargs -0 cat | wc -l'
Ma non sta creando l'alias. Perché potrebbe essere?
Ho un .bashrc
file di una riga nella mia directory home:
alias countlines='find . -type f -print0 | xargs -0 cat | wc -l'
Ma non sta creando l'alias. Perché potrebbe essere?
Risposte:
In OSX, .bash_profile
viene utilizzato al posto di .bashrc
.
E sì, il .bash_profile
file dovrebbe trovarsi in /Users/YourName/
(In altre parole, ~/.bash_profile
)
Per esempio, /Users/Aaron/.bash_profile
source ~/.bashrc
.[bash_]profile
e .bashrc
può essere utilizzato su OS X e Linux. Il primo viene caricato quando la shell è una shell di login; quest'ultimo quando non lo è. La vera differenza è che Linux esegue una shell di accesso quando l'utente accede a una sessione grafica e quindi, quando si apre un'applicazione terminale, quelle shell sono shell non di accesso; mentre OS X non esegue una shell all'accesso grafico e quando si esegue una shell da Terminal.app, questa è una shell di accesso.
Se vuoi che i tuoi alias funzionino nelle shell di login e non login (e di solito lo fai), dovresti metterli in .bashrc e source .bashrc nel tuo .bash_profile, con una linea come questa:
[ -r ~/.bashrc ] && source ~/.bashrc
Questo vale per qualsiasi sistema che utilizza bash.
PATH=$PATH:/my/private/binaries
porterà a PATH bloat. Vedi questo per una soluzione alternativa.
.profile
anziché .bashrc
.
.profile_
...?
Su Mac OS X Yosemite , esegui il seguente comando:
vi ~/.profile
Quindi aggiungere la seguente riga:
source ~/.bashrc
Ora salva e chiudi .profile
, quindi apri una nuova finestra Terminale o esegui semplicemente:
source ~/.profile
Vedi anche questa risposta . Ha funzionato su v10.10.3.