Zuerst einmal möchte ich auf oben angesprochenen Terminal-Befehl
history
eingehen, der eigentlich weiter nichts macht, als alle schon einmal eingegebenen Terminalbefehle aufzulisten. Diese Liste findet man auch in seinem /home Ordner in der versteckten Datei .bash_history. Ist ein und das selbe. Wenn ich allerdings jede Menge von Terminalbefehlen in der History stehen habe, vieles davon doppelt und dreifach, meine ich, das ich mit oben angeführtem Befehl zur Rückwärtssuche erheblich schneller bin, falls ich noch den ungefähren Befehl im Kopf habe. Falls ich natürlich unter retrograder Amnesie leiden sollte, muss ich eben suchen. Aber wie immer führen viele Wege nach Rom. Der Vollständigkeit halber sei er aber mit erwähnt.
Um auf die bash-completion einzugehen ... durch Betätigen der Tab-Taste kann man einen im Terminal eingegebenen Befehl komplettieren, ohne den ganzen Befehl kennen zu müssen. So führt das betätigen der Tab-Taste unter dem eingegebenen Befehlsteil up zu upgrade update. Einfach ausprobieren. Gebt einen Teil des Befehls ein und drückt die Tab-Taste. Wenn die bash-completion nicht installiert sein sollte (eher unwahrscheinlich) kann man sie nachinstallieren. Ebenso ist es möglich, dafür eigene Scripte zu schreiben. Wen das interessiert ... unter Google werden sie geholfen. Hier ein Denkanstoß ---> https://opensource.com/article…ng-bash-completion-script
Doch nun weiter im Text ...
Stell dir vor, du gibst einen ellenlangen Befehl im Terminal ein und als du auf die Enter-Taste drückst, stellst du fest, das dafür Root-Rechte erforderlich sind. Katastrophe! Nun gibt es mehrere Optionen. Die gängigste ist, den gesamten Befehlszeilen-Krampf zu kopieren, die Konsole mit Root-Rechten zu starten und den Befehl wieder einzufügen. Kann man machen. Geht aber schneller mit
sudo !!
Das erspart jede Menge Tipperei. sudo startet hier die erweiterten Rechte und !! ruft den gesamten vorherigen Befehl noch einmal auf. Ich nutze hier bewusst nicht su, weil ich sonst erst die Root-Konsole aufrufen und das dazugehörige Passwort eingeben müsste. Mit sudo bin ich tatsächlich schneller.
Zum Thema retrograde Amnesie ... da sind ständige Vertipper nicht weit. Wer feststellt, das er sich immer wieder bei bestimmten Wörtern vertippt, kann die Alias-Funktion der Konsole nutzen. Ihr fügt also einfach den Vertipper in der .bashrc mit einer Alias-Funktion ein. Sieht so aus
alias sufo=sudo
Auf diese Weise wird der Befehl automatisch korrigiert und du musst ihn nicht erneut eingeben. Interessant, nicht?! Vor allem kann man mit dem Alias-Befehl noch etwas ganz nettes basteln. Man kann nämlich ellenlange Befehle, die man immer wieder verwendet, zu ganz einfachen machen. Wie? Ich baue in der bashrc den alias-Befehl für den langen Befehl zu einem kurzen um. Man muss nur aufpassen, das man ihn nicht nach schon existierenden Befehlen benennt. Das kann vor den Baum gehen! Also Augen auf beim basteln. Hier ein Beispiel dazu ---> https://de.unixlinux.online/tx/1004001396.html
Wenn eine interaktive Antwort in einem Terminalbefehl nötig ist und ich das schon vorher weiß, kann ich den Terminalbefehl mit der Option
-y
versehen. Das ist jetzt zwar etwas für Oberfaule, aber oftmals auch hilfreich. Ein Beispiel
zypper dup -y
Klappt nicht immer. Manchmal muss, wie zum Beispiel bei der Aktualisierung eines Nvidia-Treibers, erst noch verschiedenes gelesen und bestätigt werden. Aber in 80% aller Fälle geht das gut. Man kann diese Funktion aber auch noch anders einsetzen. Zum Beispiel so
yes | command_or_script
Das ist sicher selbsterklärend.
Hier einmal noch ein etwas abartiger Befehl, um Dateien zu finden, die einen bestimmten Text enthalten.
grep -Pri Search_Term path_to_directory
Man sollte den Befehl find jedoch vorziehen.