/ / ZSH Cull Alte Aliase - shell, zsh, alias, oh-my-zsh

Alte Aliase von ZSH Cull - shell, zsh, alias, oh-my-zsh

Wenn ich anrufe alias In einer zsh-Shell erhalte ich eine Liste der Aliase. Einige von ihnen sind erwünscht, andere nicht. Ich habe ursprünglich eine .alias Datei in meinem Home-Verzeichnis und hinzugefügt source $HOME/.alias zu meinem .zshrc. Wie lösche ich einen vorhandenen Alias, der nicht Teil der Datei ist, die von meiner Quelle stammt? .zshrc? (Vermutlich könnte ich das eins nach dem anderen mit machen unalias, aber das scheint unglaublich umständlich.)

Antworten:

2 für Antwort № 1

unalias Unterstützt das gleichzeitige Deaktivieren mehrerer Aliase, sodass Sie dies nicht unbedingt einzeln tun müssen.

Ich würde vorschlagen, einfach alle Aliase zu löschen und sie neu zu laden ~/.alias.

unalias ${(k)aliases} ${(k)galiases} ${(k)saliases}; source

Dies erfordert die zsh/parameter Modul geladen werden. Überprüfen Sie mit zmodload | grep parameterladen mit zmodload zsh/parameter.

Die Parameter aliases, galiases und saliases Ordnen Sie die Namen der regulären, globalen und Suffix-Aliase ihren Erweiterungen zu. ${(k)parameter} wird durch die Tasten von ersetzt parameter.


Wenn Sie das Modul aus irgendeinem Grund nicht laden können, können Sie es mit der Ausgabe von umgehen alias Befehl:

unalias $(alias | cut -d = -f 1) ; source ~/.alias

Wenn Sie nur einen bestimmten Alias-Typ deaktivieren möchten, verwenden Sie alias -r für reguläre Aliase (anstelle von Befehlen), alias -g für globale Aliase und alias -s für Suffix-Aliase.


Wenn Sie dies öfter tun müssen, definieren Sie einfach eine Funktion in Ihrem ~/.zshrc (oder eine andere Datei, die Sie von dort beziehen)

reload-aliases () {
unalias ${(k)aliases}
source ~/.alias
}

Verwandte Fragen
Bemerkungen
Einen Kommentar hinzufügen