Wenn es darum geht, die absolute Kontrolle über Ihr Linux-System zu erlangen, kommt nichts der Befehlszeilenschnittstelle (CLI) nahe. Um ein Linux-Power-User zu werden, muss man die verschiedenen Arten von Shell-Befehlen und die entsprechenden Möglichkeiten ihrer Verwendung vom Terminal aus verstehen.
In Linux gibt es mehrere Arten von Befehlen, und für einen neuen Linux-Benutzer ermöglicht die Kenntnis der Bedeutung verschiedener Befehle eine effiziente und präzise Verwendung. Daher werden wir in diesem Artikel die verschiedenen Klassifikationen von Shell-Befehlen in Linux durchgehen.
Empfohlener Text: 5 interessante Kommandozeilen-Tipps und -Tricks in Linux – Teil 1
Eine wichtige Sache, die Sie beachten sollten, ist, dass sich die Befehlszeilenschnittstelle von der Shell unterscheidet, sie bietet Ihnen nur die Möglichkeit, auf die Shell zuzugreifen. Die ebenfalls programmierbare Shell ermöglicht es dann, über Kommandos mit dem Kernel zu kommunizieren.
Verschiedene Klassifikationen von Linux-Befehlen fallen unter die folgenden Klassifikationen:
1. Ausführbare Programmdateien (Dateisystembefehle)
Wenn Sie einen Befehl ausführen, durchsucht Linux die in der $PATH-Umgebungsvariablen gespeicherten Verzeichnisse von links nach rechts nach der ausführbaren Datei dieses bestimmten Befehls.
Sie können die Verzeichnisse im $PATH
anzeigen wie folgt:
$ echo $PATH /home/aaronkilik/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
In der obigen Reihenfolge das Verzeichnis /home/aaronkilik/bin
wird zuerst gesucht, gefolgt von /usr/local/sbin
usw., die Reihenfolge ist für den Suchvorgang von Bedeutung.
Beispiele für Dateisystembefehle in /usr/bin
Verzeichnis:
$ ll /bin/
Beispielausgabe
total 16284 drwxr-xr-x 2 root root 4096 Jul 31 16:30 ./ drwxr-xr-x 23 root root 4096 Jul 31 16:29 ../ -rwxr-xr-x 1 root root 6456 Apr 14 18:53 archdetect* -rwxr-xr-x 1 root root 1037440 May 17 16:15 bash* -rwxr-xr-x 1 root root 520992 Jan 20 2016 btrfs* -rwxr-xr-x 1 root root 249464 Jan 20 2016 btrfs-calc-size* lrwxrwxrwx 1 root root 5 Jul 31 16:19 btrfsck -> btrfs* -rwxr-xr-x 1 root root 278376 Jan 20 2016 btrfs-convert* -rwxr-xr-x 1 root root 249464 Jan 20 2016 btrfs-debug-tree* -rwxr-xr-x 1 root root 245368 Jan 20 2016 btrfs-find-root* -rwxr-xr-x 1 root root 270136 Jan 20 2016 btrfs-image* -rwxr-xr-x 1 root root 249464 Jan 20 2016 btrfs-map-logical* -rwxr-xr-x 1 root root 245368 Jan 20 2016 btrfs-select-super* -rwxr-xr-x 1 root root 253816 Jan 20 2016 btrfs-show-super* -rwxr-xr-x 1 root root 249464 Jan 20 2016 btrfstune* -rwxr-xr-x 1 root root 245368 Jan 20 2016 btrfs-zero-log* -rwxr-xr-x 1 root root 31288 May 20 2015 bunzip2* -rwxr-xr-x 1 root root 1964536 Aug 19 2015 busybox* -rwxr-xr-x 1 root root 31288 May 20 2015 bzcat* lrwxrwxrwx 1 root root 6 Jul 31 16:19 bzcmp -> bzdiff* -rwxr-xr-x 1 root root 2140 May 20 2015 bzdiff* lrwxrwxrwx 1 root root 6 Jul 31 16:19 bzegrep -> bzgrep* -rwxr-xr-x 1 root root 4877 May 20 2015 bzexe* lrwxrwxrwx 1 root root 6 Jul 31 16:19 bzfgrep -> bzgrep* -rwxr-xr-x 1 root root 3642 May 20 2015 bzgrep*
2. Linux-Aliase
Dies sind benutzerdefinierte Befehle, sie werden mit dem Alias erstellt Shell-integrierter Befehl und enthalten andere Shell-Befehle mit einigen Optionen und Argumenten. Die Idee ist, grundsätzlich neue und kurze Namen für längere Befehle zu verwenden.
Empfohlener Text: 10 erstaunliche und mysteriöse Verwendungen von (!) Symbolen oder Operatoren in Linux-Befehlen
Die Syntax zum Erstellen eines Alias lautet wie folgt:
$ alias newcommand='command -options'
Um alle Aliase aufzulisten Geben Sie auf Ihrem System den folgenden Befehl ein:
$ alias -p alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"' alias egrep='egrep --color=auto' alias fgrep='fgrep --color=auto' alias grep='grep --color=auto' alias l='ls -CF' alias la='ls -A' alias ll='ls -alF' alias ls='ls --color=auto'
Um einen neuen Alias unter Linux zu erstellen, gehen Sie die folgenden Beispiele durch.
$ alias update='sudo apt update' $ alias upgrade='sudo apt dist-upgrade' $ alias -p | grep 'up'
Die oben erstellten Aliase funktionieren jedoch nur vorübergehend, beim Neustart des Systems funktionieren sie nicht nach dem nächsten Start. Sie können dauerhafte Aliase in Ihrer .bashrc
festlegen Datei wie unten gezeigt.
Führen Sie nach dem Hinzufügen den folgenden Befehl aus, um ihn zu aktivieren.
$ source ~/.bashrc
3. Reservierte Wörter der Linux-Shell
In der Shell-Programmierung werden Wörter wie if , dann , fi , für , während , Fall , esac , sonst , bis und viele andere sind Shell-reservierte Wörter. Wie die Beschreibung andeutet, haben sie eine spezielle Bedeutung für die Shell.
Sie können alle Schlüsselwörter der Linux-Shell mit type
auflisten Befehl wie gezeigt:
$ type if then fi for while case esac else until if is a shell keyword then is a shell keyword fi is a shell keyword for is a shell keyword while is a shell keyword case is a shell keyword esac is a shell keyword else is a shell keyword until is a shell keyword
Empfohlener Text: 10 nützliche Linux-Verkettungsoperatoren mit praktischen Beispielen
4. Linux-Shell-Funktionen
Eine Shell-Funktion ist eine Gruppe von Befehlen, die gemeinsam innerhalb der aktuellen Shell ausgeführt werden. Funktionen helfen, eine bestimmte Aufgabe in einem Shell-Skript auszuführen. Die konventionelle Form, Shell-Funktionen in ein Skript zu schreiben, ist:
function_name() { command1 command2 ……. }
Alternativ
function function_name { command1 command2 ……. }
Sehen wir uns an, wie Shell-Funktionen in einem Skript namens shell_functions.sh
geschrieben werden .
#!/bin/bash #write a shell function to update and upgrade installed packages upgrade_system(){ sudo apt update; sudo apt dist-upgrade; } #execute function upgrade_system
Anstatt die beiden Befehle auszuführen:sudo apt update
und sudo apt dist-upgrade
Von der Befehlszeile aus haben wir eine einfache Shell-Funktion geschrieben, um die beiden Befehle als einen einzigen Befehl auszuführen, upgrade_system
innerhalb eines Skripts.
Empfohlener Text: 5 Shell-Skripte für Linux-Neulinge zum Erlernen der Shell-Programmierung
Speichern Sie die Datei und machen Sie danach das Skript ausführbar. Führen Sie es schließlich wie folgt aus:
$ chmod +x shell_functions.sh $ ./shell_functions.sh
5. Integrierte Linux-Shell-Befehle
Dies sind Linux-Befehle, die in die Shell integriert sind, sodass Sie sie nicht im Dateisystem finden können. Dazu gehört pwd , CD , bg , Alias , Geschichte , tippen , Quelle , lesen , beenden und viele andere.
Sie können integrierte Linux-Befehle mit type
auflisten oder überprüfen Befehl wie gezeigt:
$ type pwd pwd is a shell builtin $ type cd cd is a shell builtin $ type bg bg is a shell builtin $ type alias alias is a shell builtin $ type history history is a shell builtin
Erfahren Sie mehr über die Verwendung einiger in Linux integrierter Befehle:
- 15 „pwd“-Befehlsbeispiele in Linux
- 15 „cd“-Befehlsbeispiele in Linux
- Lernen Sie die Macht des Linux-Befehls „Geschichte“
Schlussfolgerung
Als Linux-Benutzer ist es immer wichtig, die Art des Befehls zu kennen, den Sie ausführen. Ich glaube, dass Sie mit der obigen präzisen und einfach verständlichen Erklärung, einschließlich einiger relevanter Illustrationen, wahrscheinlich ein gutes Verständnis der verschiedenen Kategorien von Linux-Befehlen haben.
Sie können sich auch über den Kommentarbereich unten bei Fragen oder ergänzenden Ideen melden, die Sie uns anbieten möchten.