Wiem, że w bash możesz ustawić aliasy w pliku .bash_aliases, aby wpisane polecenie nie musiało być poleceniem przechowywanym w plikach binarnych w systemie. Czy jest jakiś sposób, aby uzyskać aliasy w Zsh?
Wiem, że w bash możesz ustawić aliasy w pliku .bash_aliases, aby wpisane polecenie nie musiało być poleceniem przechowywanym w plikach binarnych w systemie. Czy jest jakiś sposób, aby uzyskać aliasy w Zsh?
Odpowiedzi:
możesz to zrobić za pomocą polecenia „alias” o następującej składni:
alias [ -gmrL ] [ name[=value] ... ]
dla przełączników „gmrL”, zobacz ten przewodnik, który jest moim odniesieniem. Dla każdej nazwy bez wartości, zsh wypisze nazwę i to, do czego jest wcześniej alias. Bez żadnych argumentów alias wyświetla wartości WSZYSTKICH zdefiniowanych aliasów.
Aby zdefiniować jeden lub więcej aliasów, wystarczy wpisać
alias name1=value1 name2=value2 ... nameX=valueX
Dla każdej nazwy o odpowiedniej wartości zsh definiuje alias o tej wartości. aby uzyskać więcej informacji, sprawdź ten link ;-)
Aktualizacja: zaktualizowano martwy link.
~/.profile
do przechowywania wszystkich aliasów mi zależy i zaopatrywać ~/.profile
go od ~/.zshrc
.
Chodzę tam iz powrotem między bash i zsh i używam tego samego pliku .aliases dla obu. Dzielą tę samą podstawową składnię aliasów, dzięki czemu można utworzyć plik .aliases i połączyć go z plikami .bashrc i .zshrc:
.bashrc:
if [ -f ~/.aliases ]; then
. ~/.aliases
fi
.zshrc:
source $HOME/.aliases
Fwiw można to również zrobić za pomocą deklaracji zmiennych środowiskowych, w osobnym pliku .env .
~/ .bash_aliases
Potrzebuję niewielkiej pomocy, proszę, jeśli tam jesteś, odpowiedz
Zazwyczaj je umieszczasz ~/.zshenv
. Ale wiele programów używa /bin/sh
(zwykle bash
) zamiast $SHELL
do wykonywania poleceń powłoki, więc aby działał wszędzie, prawdopodobnie i tak będziesz musiał umieścić bash
odpowiednik aliasu ~/.bash_aliases
.