Wie wechsle ich in das Verzeichnis, in das ich diese Datei gerade verschoben habe?


10

Nehmen wir also an, ich habe es gerade getan:

mv ./myfile /to/some/other/place/

Und jetzt entscheide ich mich, der Datei zu folgen und in dieses Verzeichnis zu gehen.

Während ich zur Maus gehen konnte, den Text auswählen, 'cd' eingeben und dann mit der rechten Maustaste klicken, um ihn einzufügen - ich würde ein schnelleres tastaturbasiertes Verzeichnis bevorzugen.

Also, was ist der beste Weg, das zu tun?
(Im Allgemeinen und wenn anders, Centos + Bash im Besonderen)

Antworten:


12

Wenn Sie "! $" Eingeben, wird das letzte Argument der vorherigen Zeile ausgegeben. In welches Verzeichnis haben Sie die Datei verschoben?


Das Beste, was ich den ganzen Tag gelernt habe.
Markdrayton

1
Rorys CD $ _ ist Posix, daher funktioniert sie sowohl mit Ksh- und Bourne-Shell als auch mit Bash.
kmarsh

1
"cd $ _" funktioniert nicht in csh oder tcsh, aber in zsh. csh und tcsh unterstützen jedoch! $. Nur für das Protokoll.
Thepocketwade


4

Versuchen Sie "cd" und dann "[Alt] +". (kann wiederholt verwendet werden) Es werden alle letzten Parameter Ihres vorherigen Befehls gescrollt. So wird es aussehen:

mv ./myfile /to/some/other/place/
cd <Alt>+.

Danke, auch hilfreich, da ich manchmal den unmittelbar vorhergehenden Befehl nicht möchte.
Peter Boughton

Hier ist ein weiterer nützlicher Bash-Trick für Sie: Mit Strg + r können Sie Ihren Verlauf schnell durchsuchen, indem Sie einen Teilbefehl eingeben. Kann auch wiederholt verwendet werden, um zu älteren Teilen Ihrer Geschichte zurückzukehren
Katriel

4

Esc- .(Escape gefolgt von Punkt) Gibt Ihnen das letzte Argument des vorherigen Befehls, es ist eine Readline- Verknüpfung. Sie können es mehrmals eingeben, um die letzten Argumente der vorherigen Befehle zu durchlaufen. Readline ist eine Befehlszeileneintragsbibliothek, die von vielen Shells (wie z. B. Bash, demselben Betreuer), IRC-Clients usw. verwendet wird.

Dies ist wahrscheinlich meine Lieblings-Tastenkombination (gefolgt von ctrl- afür Zeilenanfang und ctrl- efür Zeilenende), probieren Sie es aus ;-)

Update: Oh, Katriel hat gepostet Alt- .das ist das gleiche, nur ein anderer Schlüssel ( Altstatt Esc)


2

Sie können auch $_als letztes Argument der letzten Befehlszeile verwenden

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.