Mam .bashrc
plik jednowierszowy w moim katalogu domowym:
alias countlines='find . -type f -print0 | xargs -0 cat | wc -l'
Ale to nie tworzy aliasu. Dlaczego to może być?
Mam .bashrc
plik jednowierszowy w moim katalogu domowym:
alias countlines='find . -type f -print0 | xargs -0 cat | wc -l'
Ale to nie tworzy aliasu. Dlaczego to może być?
Odpowiedzi:
W OSX .bash_profile
jest używany zamiast .bashrc
.
Tak, .bash_profile
plik powinien znajdować się w /Users/YourName/
(Innymi słowy ~/.bash_profile
)
Na przykład, /Users/Aaron/.bash_profile
source ~/.bashrc
.[bash_]profile
i .bashrc
może być używany zarówno w systemie OS X, jak i Linux. Pierwszy ładowany jest, gdy powłoka jest powłoką logowania; ten ostatni, kiedy tak nie jest. Prawdziwa różnica polega na tym, że Linux uruchamia powłokę logowania, gdy użytkownik loguje się do sesji graficznej, a następnie, gdy otwierasz aplikację terminalową, powłoki te nie są powłokami logowania; podczas gdy OS X nie uruchamia powłoki po logicznym logowaniu, a kiedy uruchamiasz powłokę z Terminal.app, jest to powłoka logowania.
Jeśli chcesz, aby aliasy działały zarówno w powłokach do logowania, jak i bez logowania (i zwykle tak robisz), powinieneś umieścić je w plikach .bashrc i źródłowym .bashrc w pliku .bash_profile, z następującym wierszem:
[ -r ~/.bashrc ] && source ~/.bashrc
Dotyczy to każdego systemu używającego bash.
PATH=$PATH:/my/private/binaries
Doprowadzi do wzdęcia PATH. Zobacz to, aby obejść ten problem .
.profile
zamiast .bashrc
.
.profile_
…?
W systemie Mac OS X Yosemite uruchom następujące polecenie:
vi ~/.profile
Następnie dodaj następujący wiersz:
source ~/.bashrc
Teraz zapisz i zamknij .profile
, a następnie otwórz nowe okno terminala lub po prostu uruchom:
source ~/.profile
Zobacz także tę odpowiedź . Działa w wersji 10.10.3.