Aliase für komplexe und täglich verwendete Terminalbefehle

Beim Scannen nach SNMP-Geräten in einem lokalen Netzwerk verwende ich den folgenden Befehl;

nmap -sU -p 161 -T4 -d -v -n -Pn --script snmp-interfaces 10.0.0.1-254 | grep -E '(IP-Adresse|MAC-Adresse)'

Abgesehen davon, dass ich ein gutes Gedächtnis brauche, ist die Wahrscheinlichkeit groß, dass ich bei der Eingabe dieses Befehls viele Fehler mache. Um Tippfehler zu vermeiden und mir die Arbeit zu erleichtern, habe ich meine Terminalumgebung so programmiert, dass sie snmpscan als Alias für den oben genannten Befehl akzeptiert.

Ein Alias ist ein kurzes, leicht zu merkendes Wort oder eine Phrase, die einen langen und/oder komplexen Unix-Befehl ersetzt. Einige Terminal-Interaktionen sind kompliziert und manchmal sogar case-sensitive. Um zu vermeiden, dass Sie lange Befehle von Ihrem Spickzettel kopieren und einfügen müssen, besprechen wir hier, wie Sie stattdessen leicht zu merkende Abkürzungen für diese Befehle erstellen können.

Wichtig: In diesem Beispiel werden wir zwei Aliase für das AnsiWetter Befehl Dienstprogramm erstellen. Eine detaillierte Anleitung zur Installation dieses tollen Dienstprogramms auf Ihrem Linux- oder macOS-System finden Sie hier.

Wenn Sie das Dienstprogramm AnsiWeather nicht installieren möchten, können Sie die nachstehenden Beispiele so bearbeiten, dass dafür Ihre bevorzugten Befehle ausgeführt werden.

Hinzufügen von Befehlsaliasen unter Debian/Ubuntu Linux

Um einen systemweiten Alias hinzuzufügen, der von allen angemeldeten Benutzern verwendet werden kann, müssen Sie die Datei /etc/bash.bashrc bearbeiten, um Ihre Aliase aufzunehmen. Wenn Sie möchten, dass diese Aliase nur für Ihr Benutzerprofil verfügbar sind, müssen Sie die Datei ~/.bash_profile in Ihrem Home-Verzeichnis erstellen oder bearbeiten. Die Einstellungen, die Sie zu diesen Dateien hinzufügen, werden geladen, sobald Sie Ihr Terminal starten oder sich per SSH anmelden.

Nehmen wir den ersten Ansatz und erstellen einige global verfügbare Aliase. Führen Sie das in Ihrem Terminal-Fenster aus;

$ sudo nano /etc/bash.bashrc

Blättern Sie mit den Pfeiltasten (oder STRG+V) bis zum Ende der Datei und fügen Sie dort Ihre neuen Aliase ein.

Fügen Sie die folgenden Zeilen ein;

############################### My custom aliases ################################
alias weather='ansiweather -l Stuttgart,DE'
alias weather5='ansiweather -l Stuttgart,DE -u metric -s true -f 5 -d true'
############################### End custom aliases ###############################
Aliasnamen erstellen unter Linux
Hinzufügen von Aliasen zu /etc/bash.bashrc unter Ubuntu Linux

Um Ihre Änderungen zu speichern, drücken Sie STRG+X und bestätigen Sie mit der Taste „Y“ und anschließend mit der Taste „Enter“.

Um Ihre neuen Aliase anzuwenden und zu verwenden, können Sie entweder Ihr Terminal schließen und erneut öffnen oder die Datei /etc/bash.bashrc mit den neuen Änderungen wie folgt importieren;

$ source /etc/bash.bashrc

Alle im System verfügbaren Aliase können Sie wie folgt verwenden;

$ alias
Auflisten der verfügbaren Aliase unter Ubuntu Linux

Hinzufügen von Befehlsaliasen unter macOS

macOS Catalina und neuere Versionen die ZSH-Shell verwenden, während ältere Versionen die BASH-Shell nutzen. Je nach Ihrer macOS-Version müssen Sie also die entsprechende Datei bearbeiten.

Diesmal wollen wir Aliase erstellen, die nur für Ihr Benutzerprofil gelten.

Für macOS sind Catalina, Big Sur, Monterey und neuere Versionen;

$ nano ~/.zprofile

Für ältere Versionen von macOS;

$ nano ~/.bash_profile

Fügen Sie die folgenden Zeilen am Ende der beiden Dateien ein;

############################### My custom aliases ################################
alias weather='ansiweather -l Stuttgart,DE'
alias weather5='ansiweather -l Stuttgart,DE -u metric -s true -f 5 -d true'
############################### End custom aliases ###############################

Um Ihre Änderungen zu speichern, drücken Sie STRG+X und bestätigen Sie mit der Taste „Y“ und anschließend mit der Taste „Enter“.

Um die neuen Aliase anzuwenden und zu nutzen, können Sie entweder Ihr Terminal schließen und dann erneut öffnen oder Sie können die Datei, die Sie gerade bearbeitet haben, mit den neuen Änderungen wie folgt wieder importieren;

Für macOS sind Catalina, Big Sur, Monterey und neuere Versionen;

$ source ~/.zprofile

Für ältere Versionen von macOS;

$ source ~/.bash_profile

Und Sie können die neuen Aliase auflisten, indem Sie folgendes eingeben;

$ alias

Wenn Sie schließlich möchten, dass Ihre Aliase für alle angemeldeten macOS-Benutzer verfügbar sind, dann führen Sie diese Sequenz aus;

$ sudo nano /etc/zprofile (beachten Sie, dass am Anfang des Dateinamens kein "." steht)

Tipp: Wenn Sie an einem entfernten Rechner arbeiten, dessen Konfiguration Sie nicht ändern sollten, und/oder wenn Sie möchten, dass diese Aliase gelöscht werden, sobald Sie Ihre SSH-Sitzung beenden, dann verwenden Sie einfach copy/paste Ihrer Aliase ins SSH-Fenster. Dadurch werden alle Ihre bequemen Aliase nur für diese Sitzung eingerichtet. Vorausgesetzt natürlich, dass alle Binärdateien, die diese Aliase auslösen, auf dem entfernten Rechner installiert sind. Dies kann bei der Diagnose oder Verwaltung von Remote-Servern sehr nützlich sein.

Beispiel: Wenn Sie das Folgende in Ihr macOS Terminal einfügen, werden drei Aliase hinzugefügt;

$ alias cl='clear'\
alias toppy='top -U Maxwell'\
alias showdns='networksetup -getdnsservers Wi-Fi'\
alias snmpscan='sudo nmap -sU -p 161 -T4 -d -v -n -Pn --script snmp-interfaces 10.10.0.1-254 |  grep -E '\''(IP-Adresse|MAC-Adresse)'\'' '\

Starline Kontakt

Noch Fragen? Kontaktieren Sie uns.

Der ausgewiesene Experte für alle Linux- und Ceph-Plattformen kam 2018 zu Starline. Seine Vorliebe gilt raffinierten Open-Source-Lösungen und kniffligen Produktentwicklungen. Deshalb steht er auch für Anfragen bezüglich PetaSAN und FreeNAS bereit. Aber auch ARM-Server von Ambedded oder Mac-Betriebssysteme haben es ihm angetan. Privat befasst sich der Ingenieur gern mit 3D-Druckern und Robotern.

Mohammad Ammar
Technik

Sind Sie auf der Suche nach einem interessanten und inspirierenden Ausbildungsplatz? Möchten Sie etwas über Linux und die führenden Open-Source-Speichertechnologien lernen? Starline ist immer auf der Suche nach neuen Mitgliedern für sein Team von Open-Source-Enthusiasten.