Jak mogę wyświetlić i edytować wszystkie zdefiniowane aliasy w terminalu?

93

Znajomy, który był właścicielem mojego obecnego komputera Mac, stworzył wiele poleceń aliasowych. Czy istnieje sposób na wyświetlenie listy wszystkich zdefiniowanych aliasów i powiązanego z nimi polecenia?

A jeśli tak, to czy mogę je edytować, czy powinienem je po prostu usunąć za pomocą Unalias i odtworzyć?

MattStacey
źródło

Odpowiedzi:

105

Wystarczy, że napiszesz aliasw wierszu polecenia, a wszystkie aktywne aliasy zostaną wyświetlone na liście.

Aliasy są zwykle ładowane przy inicjalizacji powłoki, więc zajrzyj do .bash_profilelub .bashrcdo katalogu domowego.

unaliasbędzie działać tylko w bieżącej sesji. O ile nie znajdziesz, gdzie jest zdefiniowane i załadowane, zostanie załadowane ponownie po rozpoczęciu nowej sesji terminalu.

~/.bashrcuruchamia się zarówno dla powłok logowania, jak i niezalogowanych, ~/.bash_profiledziała tylko dla powłok logowania.

Zobacz powłokę logowania vs powłokę niezalogowaną

Zgodnie z komentarzem Chris Page:

Należy umieścić większość swoich dostosowania (w tym pseudonimy) w ~/.bashrci nie ~/.bash_profiledziałają ~/.bashrc, więc mają one zastosowanie zarówno do logowania (~/.bash_profile)i bez logowania (~/.bashrc)muszli. Również zdecyduj, który z nich powinien być „podstawowy”, a jeśli profil jest twoim wyborem, zaznacz plik rc na końcu. Jeśli plik rc jest pierwotny, znajdź go na początku swojego profilu

Te wiersze powinny znajdować się w pliku ~/.bash_profile:

if [ -f "$HOME/.bashrc" ] ; then
  source $HOME/.bashrc
fi

Dotyczy to ~/.bashrcpowłok logowania i kolejności, w jakiej chcesz, jeśli jeden plik zależy od drugiego w zależności od tego, co ustawiasz.

conorgriffin
źródło
1
Zalecam umieszczanie większości dostosowań w ~ / .bashrc i uruchamianie ~ / .bash_profile z ~ / .bashrc, aby dotyczyły one zarówno powłok logowania (~ / .bash_profile), jak i powłok innych niż login (~ / .bashrc). np. umieść to w ~ / .bash_profile:if [ -f "$HOME"/.bashrc ]; then . "$HOME"/.bashrc fi
Chris Page
9

Powinieneś zajrzeć do tych plików:

/etc/profile
~/.profile
~/.bash_profile
~/.bashrc

Są to wiarygodne pliki startowe dla twojej powłoki (które, jak zakładam, to bash).

Cedric H.
źródło
„.bashrc” to poprawna nazwa pliku.
Chris Page
Masz rację, nie wiem dlaczego tak to napisałem.
Cedric H.
Po prostu edytowałbym go bez komentarza, ale StackExchange nie pozwala mi na edycję jednoznakową.
Chris Page
Sprawdź także w ogólnosystemowym / etc / bashrc
EmmEff
Nie zapomnij o wszystkich plikach pochodzących ze źródła lub. (kropka) w tych plikach.
ManuelSchneid3r