2009-06-25

Linux - Meine Commandline merkt sich was

Wer kennt das nicht: Der Notizblock liegt am Schreibtisch in der Firma, man selbst sitzt zu hause am SSH-Client und die 10000 Zeilen Commandline-History enthalten den einen genialen Command nicht mehr, den man sich sogar notiert hat.
Mir geht es oft mit awk-sachen so. Daher habe ich solche Sachen bisher immer per copy and paste in ein File gespeichert. Dieses heißt "saved" und liegt in meinem home-Verzeichnis. Ich wollte allerdings um den copy-paste-Prozess und das File-öffnen herum.
Dafür habe ich mit dem folgenden simplen Einträgen in meiner ~/.bashrc eine Lösung gefunden:

# speichert den letzten abgesetzten command in ~/saved
alias save='history | tail -n 2 | head -n 1 | cut -b 8- >> ~/saved'
# gibt ~/saved aus
alias saved='cat ~/saved'

Wie benutze ich das?
  • Wenn ich einen genialen Gedanken hatte schreibe ich den als #-Kommentar in die Befehlszeile und drücke Enter.
  • Geniale Commands landen so ebenfalls nach dem Enter in der Befehls-History
  • ist mein nächster Command "save", so wird das in mein "saved"-File geschrieben
  • und mit "saved" bekomme ich das "saved"-file wieder.
Manchmal schreibe ich ein Command und bin mit dem Output zufrieden, dann tippe ich als nächstes "save" und lasse es speichern. Danach tippe ich eine Zeile die mit # beginnt und ein paar stichwörter enthält und speichere sie ebenfalls mit "save". Wenn ich nun ein kommando suche kann ich mit "saved | grep xyz" danach suchen, oder ich mache ein "saved | less" und suche da dann nach stichwörtern.

:wq!

0 Comments: