Chcę dodać aliasy do mojego środowiska, aby były dostępne we wszystkich instancjach terminalu.
Mam odpowiedź :
Tak, możesz umieścić go w swoim .bashrc, .bash_profile lub .profile. W niektórych systemach skrypty inicjujące powłokę również pobierają .bash_aliases lub .aliases, więc jeśli jeden z tych plików istnieje w twoim systemie, warto je użyć.
Ale nie mogę znaleźć żadnego z tych plików.
(Skonfigurowałem OS X, aby zobaczyć ukryte pliki, a jednak nie widzę żadnego z powyższych 4.)
Odpowiedzi:
Jeśli używasz bash, dodaj polecenia aliasu do ~ / .bashrc i zapisz plik taki jak ~ / .bash_profile:
Gdy bash jest wywoływany jako interaktywna powłoka niezalogowana, czyta .bashrc, ale nie .bash_profile. Kiedy bash jest wywoływany jako interaktywna powłoka logowania, czyta .bash_profile, ale nie .bashrc.
Terminal i iTerm domyślnie otwierają nowe powłoki jako powłoki logowania, więc wielu użytkowników systemu OS X używa pliku .bash_profile jako osobistego pliku konfiguracyjnego. Na przykład tmux i tryb powłoki w Emacsie otwierają nowe powłoki jako powłoki niezalogowane.
.profile jest także odczytywany przez inne powłoki, takie jak ksh. Jeśli istnieją zarówno .bash_profile, jak i .profile, bash czyta .bash_profile tylko wtedy, gdy jest wywoływany jako interaktywna powłoka logowania.
Zobacz https://www.gnu.org/software/bash/manual/html_node/Bash-Startup-Files.html aby uzyskać więcej informacji.
źródło
zsh
, dodaj polecenia aliasu do~/.zshrc
.~/.zshrc
jest odczytywany zarówno przez (nieinteraktywne) powłoki niezalogowane, jak i powłoki logowania, więc nie musisz ich pozyskiwać~/.zprofile
.Otwórz nowe okno terminala i przejdź do katalogu domowego (po prostu wpisz
cd
i naciśnij Enter).Następnie wpisz
ls .bash*
ils .profile
(zwróć uwagę, że każda z tych nazw plików zaczyna się od kropki). Jeśli masz te pliki (i powinieneś mieć przynajmniej plik .profile), musisz je edytować i dodać do nich swoje aliasy. Używam VI (lub VIM) do edycji tych plików, ale możesz użyć innego edytora (w rzeczywistości wpisanie w oknie terminalaopen .bash_profile
otworzy go w TextEditor, który może być nieco bardziej przyjazny dla użytkownika, jeśli nie znasz VI) . Jeśli z jakiegoś powodu nie masz żadnego z tych plików, utwórz nowy (i nazwij go .bashrc), dodaj do niego swoje linie aliasów (będzie to jedno polecenie w wierszu, tak jakbyś je wpisał) w powłoce), a następnie zapisz plik. Następnie możesz utworzyć dowiązania symboliczne do .bash_profile i .profile za pomocąln -s .bashrc .bash_profile; ln -s .bashrc .profile
.Zazwyczaj robię dowiązania symboliczne .bashrc i .bash_profile do .profile, a potem muszę się martwić tylko o jeden plik.
Różnica między tymi plikami polega na tym, że bash będzie pobierał różne pliki w zależności od tego, czy został on uruchomiony jako powłoka logowania (zwykle proces logowania uruchamia powłokę jako powłokę logowania), czy tylko jako interaktywną (ale nie zalogowaną) powłokę, lub nieinteraktywna powłoka. Posiadanie wszystkich trzech plików w zasadzie takich samych daje mi spójne środowisko bez względu na to, jak zaczął się bash.
W ten sposób uzyskasz więcej informacji
man bash
, ale bądź przygotowany, to długa strona podręcznika. Będziesz mógł zobaczyć, który z trzech plików (.bashrc, .profile i .bash_profile) jest pozyskiwany w zależności od trybu, w którym uruchomiono bash.Mam nadzieję, że to pomoże - jeśli nie, daj mi krzyk.
źródło
Wprowadź następujące polecenia w terminalu:
dodaj następujące elementy:
Na koniec uruchom ponownie Terminal.
źródło
Jeśli potrzebujesz tego urządzenia, musisz zajrzeć do
/etc
folderu. Jednak mogą one nie istnieć domyślnie, w takim przypadku wystarczy je utworzyć w powyższym folderze i zrestartować terminal. Najprawdopodobniej będziesz musiał ich użyć,sudo
ponieważ/etc
folder jest własnościąroot
.Jeśli potrzebujesz tego dla każdego otwieranego terminalu, nie musisz tego robić na maszynie. Możesz utworzyć te pliki we własnym folderze domowym i będą one odczytywane przez terminal za każdym razem, gdy zaczynasz sesję terminala.
Również, jak wspomniano w komentarzach, na ogół będzie można je zobaczyć tylko za pomocą terminala i za pomocą
ls -lha
.źródło
jeśli masz zainstalowany ruby, sprawdź ten skrypt ruby https://github.com/ytbryan/aka
Skrypt zapewnia takie funkcje, jak trwałość i automatyczne pobieranie pliku kropkowego. Możesz zarządzać aliasami przez terminal bez przerywania pracy i otwierać edytor tekstu.
zrzeczenie się odpowiedzialności: Napisałem ten skrypt i używam go codziennie. Daj mi znać, jeśli jest jakiś błąd / pomysł. :)
źródło
Dla tych, którzy szukają komendy ll jak w Linux BASH, jest ona tworzona w ten sposób ...
alias ll="ls -laF"
Dodaj tę linię do
.bashrc
pliku, a następnie zduplikuj.bashrc
plik jako.bash_profile
, a będziesz mieć zawsze i na zawsze.Dla tego, co jest warte, na Linuksie BASH to tylko alias „
ls -laF
”.źródło
miałem ten sam problem, że nie miałem pliku .bash ani .profile w mojej lokalizacji Profile. w końcu znalazłem to w / etc
źródło