Neben ^ r / ^ s Geschichte suche ich:
alt.Fügt das letzte "Wort" des vorherigen Befehls am Cursor ein. Wiederholen Sie diesen Vorgang, um das letzte Wort älterer Befehle abzurufen. (Beachten Sie jedoch, dass ein abschließendes &
Wort als letztes Wort für Hintergrundbefehle gilt.)
Das ist super praktisch für mkdir foo
, cd
Alt-Punkt. Noch schneller als Pfeil nach oben, ^ a, alt-d (löscht vorwärts Wort) cd
.
Um das vorletzte Wort zu erhalten, verwenden Sie esc
-
2
alt+.
(dh verwenden Sie ein numerisches Argument im Emacs-Stil für alt+.
. Negative Zählungen am Ende, positive Zählungen am Anfang). Irgendwann ist es schneller, nach der Maus zu greifen und sie zu kopieren / einfügen, oder nach oben zu gehen und einen Teil davon zu markieren (siehe unten).
Wenn Ihr Terminal ordentlich eingerichtet ist, werden Strg-Links und Strg-Rechts wortweise vor- und zurückgespult. Wenn nicht, tun hoffentlich mindestens Alt-B und Alt-F dasselbe.
Strg- / ist ein Rückgängigmachen. Sie können die automatische Wiederholung zum Löschen von Wörtern viel effizienter verwenden, wenn Sie sie rückgängig machen können, wenn Sie ein wenig überschießen.
Stärkeres Mischen / Anpassen von Befehlen ergibt sich aus der Verwendung des Kill-Rings, der genau wie in Emacs funktioniert. ctrl-y, um die letzte Strg-w / Strg-u / Strg-Rücktaste / Alt-d einzufügen. alt-y, um durch älteren getöteten Text zu blättern.
Mehrere Strg-w oder was auch immer in einer Reihe machen bei Kill-Ring-Eintrag. Verwenden Sie den Pfeil nach links und rechts oder etwas, um den Eintrag aufzubrechen, wenn Sie zwei Dinge entfernen und später nur eine einfügen möchten.
Wenn Sie all dies kombinieren, können Sie
- Starten Sie die Eingabe eines Befehls
- ctrl-r, um zu einem alten Befehl zurückzukehren und einen Teil davon mit control-w oder ähnlichem abzurufen.
- esc-r oder
alt+r
zum Wiederherstellen, wie es war, bevor Sie einen Teil davon gelöscht haben.
- alt-
>
um zum Ende der Geschichte zu gelangen (dh den ganzen Weg nach unten), um zu dem Befehl zurückzukehren, mit dem Sie sich gerade befanden.
Weitere interaktive Anwendungstipps:
Aktivieren shopt -s globstar
, damit Sie dies tun können **/*.c
(rekursiv einschließlich des aktuellen Verzeichnisses). Manchmal praktisch für den interaktiven Gebrauch, ist aber normalerweise find -name '*.c' -exec foo {} +
besser.
Wenn Sie Bash-Skripte schreiben, ist es praktisch, diese auch shopt -s extglob
in Ihren interaktiven Shells zu aktivieren. Sie werden manchmal eine Verwendung für *.!(c|h)
Dinge finden , die mit Dateien übereinstimmen, die nicht mit .c oder .h enden.
Finden Aliase Sie mögen ls -l
, less
und etwas anderes tun Sie viel. ( cp -i
, mv -i
, Und rm -I
sind schön. Lassen Sie sich nicht in die Gewohnheit , je auf sie ein selektives rm zu tun. GNU rm der -I fragt einmal für alle args.)
Ich mag alias m=less
(m für "mehr"). Ich habe mich less
mit der vorherigen / nächsten Datei ( ) eingerichtet ,und an diese .gebunden lesskey
. Die Standardeinstellung ist eine Multitastendrucksequenz, die nicht mit automatischer Wiederholung verwendet werden kann.
Ich mache gerne alles im GNU-Bildschirm. Ich finde es einfacher, nummerierte Bildschirmfenster im Auge zu behalten, als eine Schiffsladung von Registerkarten in Konsole (oder einem anderen Terminalemulator, den ich ausprobiert habe). Wenn Sie es noch nicht wissen screen
, lernen Sie tmux, weil es neuer und weniger krumm ist.
Um so etwas wie die Funktionalität des Öffnens einer neuen Shell mit der gleichen CWD wie einer anderen Shell zu erhalten, verwende ich einen benutzerdefinierten Hook für cd / pushd / popd, mit dem ich cds 8
eine CD in das Verzeichnis erstellen kann, in dem sich meine Shell in Bildschirmfenster 8 befindet. Dies funktioniert auch für Shells außerhalb der Bildschirmsitzung, sofern nur eine Bildschirmsitzung vorhanden ist.
fish
;)