Terminal-Minis: Befehle wiederholen
Befehle lassen sich - auch leicht verändert - ohne Tipperei wiederholen
Es gibt mehrere Möglichkeiten, kürzlich genutzte Befehle zu wiederholen - genau so, aber auch mit Änderungen. Super praktisch ist das zum Beispiel, wenn Ihr einen Befehl auf eine Datei und dann einen anderen Befehl auf dieselbe Datei los lassen wollt.
Tippen ist lästig! Selbst wenn Ihr das nicht so seht, solltet Ihr diese Credo im Kopf haben, denn Effizienz ist immer gut - warum seid Ihr sonst im Terminal unterwegs? ;) Es gibt ein paar wichtige Möglichkeiten, Befehle zu wiederholen, ohne sie zu tippen - auch modifiziert.
Verantwortlich dafür ist die History - und das exakte Wiederholen des letzten Befehls kennt Ihr sicherlich: Pfeiltaste hoch, und schon blättert Ihr durch die Befehle. Ihr könnt sie aber auch mit dem Befehl history anzeigen lassen und dann über die Nummer ansprechen und ausführen lassen:
history
!1234
Oder Ihr wollt einfach den letzten vim-Befehl erneut aufrufen, egal wo er in der History steht:
!vim
Das ist super praktisch, wenn man per vim Dateien bearbeitet, dann damit herumspielt und sie später weiter bearbeiten will.
Mein Favorit ist dieses Konstrukt:
echo /home/mrsupidupi/arbeit/kundexy/2024/mai/themaxy/blabla/foobar.txt
^echo^vim
Damit würde das erste Vorkommen von "echo" durch "vim" ersetzt. Das geht natürlich nicht nur bei Befehlen:
echo foobar foobar
^foobar^hummeldumm
Was würde dabei herauskommen? Klar, hummeldumm foobar natürlich. Ihr wollt mehrere Vorkommen ersetzen? Kein Thema:
echo foobar foobar
!:gs/foobar/hummeldumm
Das ! bezieht sich wieder auf die Befehlshistorie, das "g" steht für global, "s" für substitute (oder search? Egal.) und dann folgt die gängige Suchen-und-Ersetzen-Syntax in der Form /suchwort/ersatzwort.
Für Terminal-Hilfe direkt im Terminal, schaut bei cli.help vorbei.