Ich habe einige lange Protokolldateien. Ich kann die letzten Zeilen mit anzeigen tail -n 50 file.txt, aber manchmal muss ich diese letzten Zeilen bearbeiten.
Wie springe ich direkt zum Ende einer Datei, wenn ich sie mit nanoansehe?
@ Hunter.S.Thompson Dies war für Nicht-Hardcore-Benutzer gedacht (lol)
Marko Pacak
@ Hunter.S.Thompson Das geht nicht! Sie verwenden einen benutzerdefinierten Befehl! Jetzt aber vimtragbar ausprobieren G
Volker Siegel
1
@VolkerSiegel Ich kann nicht sagen, ob Sie sarkastisch sind, aber es ist kein benutzerdefinierter Befehl. Es ist ein Emoticon. Früher haben wir diese Dinge benutzt, bevor jemand Unicode Gras rauchen ließ.
NieDzejkob
Natürlich sarkastisch! Ich habe deinen Befehl ausprobiert: Kommandozeile :öffnen, als -, Pund eingeben. Das habe ich bekommen: "E464: Mehrdeutige Verwendung eines benutzerdefinierten Befehls". Alles Gute!
Sie können auch Strg + W, Strg + V tun - je nachdem, was für Ihre Hände bequemer ist :)
psmears
@psmears das hängt von der version ab. v2.4 hat Ihre Verknüpfungen. Die aktuelle Version v4.0 enthält die Verknüpfungen, die Marko erwähnt. Sehr nervig.
Mausy5043
@ Mausy5043: Bei Versionen bis mindestens 2.4 sind beide Verknüpfungen vorhanden. Version 4.0 scheint Strg + W, Strg + V entfernt zu haben, was ärgerlich ist; es hat Ctrl + W, Ctrl + T, Ctrl + Y, was zumindest auf den Buchstabentasten steht, aber länger ist :-(
psmears
Diese Verknüpfungen funktionieren in Windows / Putty
Eric Grange
22
Viele Editoren unterstützen die Option in der Befehlszeile, direkt zur Zeile NNN zu springen . Zum Glück für Sie scheint an das Ende zu springen, wenn die angegebene Zeilennummer hinter dem Ende der Datei liegt, sodass Sie Folgendes verwenden könnten:+NNNnano
nano +999999 file
Das funktioniert auch in joe, aber nicht in, zB lessoder VIM, sie beschweren sich darüber, dass sie an EOF vorbeigehen. (Zumindest die auf meinem System. less +G fileUnd vi +$ filearbeiten in denen.)
Natürlich $EDITOR +$(wc -l file) filewürde so etwas wahrscheinlich in den meisten Editoren funktionieren, aber das ist ein bisschen albern und beinhaltet das zweimalige Lesen der Datei.
Oder wenn Nano bereits geöffnet ist, verwenden Sie <kbd> Alt / <kbd> + <kbd> G </ kbd> und geben Sie 99999
Eric Grange,
11
Aus der eingebauten Nano-Hilfe ( ^G):
M-\ (^Home) Go to the first line of the file
M-/ (^End) Go to the last line of the file
Drücken Sie also Alt+ \, um zur ersten Zeile zu gelangen, oder Alt+ /, um zur letzten Zeile zu gelangen .
Dies wäre das Äquivalent von gg(Anfang) oder G(Ende) in vim .
Dies besagt auch, dass Ctrl+ Homeoder Ctrl+ Endfunktionieren soll, aberdas hat bei mir nie geklappt Sie scheinen nativ auf Konsole / Desktop zu funktionieren, aber nicht über SSH mit PuTTY.
Ich erinnere mich daran, dass /sich dies in der Nähe der Unterseite der Tastatur und \in der Nähe der Oberseite befindet.
Wenn Sie einen Befehl wünschen , können Sie eine Funktion in Ihre schreiben .bashrcoder .bash_aliasesdie Zeilenanzahl verwenden von wc:
function nano-end {# if the file exists, jump to the end# otherwise, just open an empty nano[-f "$1"]&& nano +$(wc -l "$1")|| nano
}
Jetzt tippe einfach nano-end filename, um die Datei bis zur letzten Zeile zu öffnen!
... bewirkt, dass ^ Home und ^ End an den Anfang und das Ende der Datei gehen (auf Terminals, die diese Tastenanschläge unterstützen) ...
PuTTY gegen Cygwin
Ich habe PuTTY nicht installiert, hier müssen wir uns auf andere Behauptungen stützen, dass diese Tastenkombinationen unter Windows 10 + PuTTY + SSH + nano> 2.8.1 nicht funktionieren.
Auf der anderen Seite habe ich Cygwin und Windows 10 + Cygwin + SSH + Nano> 2.8.1 funktioniert Ok.
vim
:-Pvim
tragbar ausprobieren G:
öffnen, als-
,P
und eingeben. Das habe ich bekommen: "E464: Mehrdeutige Verwendung eines benutzerdefinierten Befehls". Alles Gute!Antworten:
Öffnen Sie die Datei mit
nano file.txt
.Geben Sie jetzt Ctrl+ _und dann Ctrl+ einV
quelle
Viele Editoren unterstützen die Option in der Befehlszeile, direkt zur Zeile NNN zu springen . Zum Glück für Sie scheint an das Ende zu springen, wenn die angegebene Zeilennummer hinter dem Ende der Datei liegt, sodass Sie Folgendes verwenden könnten:
+NNN
nano
Das funktioniert auch in
joe
, aber nicht in, zBless
oder VIM, sie beschweren sich darüber, dass sie an EOF vorbeigehen. (Zumindest die auf meinem System.less +G file
Undvi +$ file
arbeiten in denen.)Natürlich
$EDITOR +$(wc -l file) file
würde so etwas wahrscheinlich in den meisten Editoren funktionieren, aber das ist ein bisschen albern und beinhaltet das zweimalige Lesen der Datei.quelle
Aus der eingebauten Nano-Hilfe (
^G
):Drücken Sie also Alt+ \, um zur ersten Zeile zu gelangen, oder Alt+ /, um zur letzten Zeile zu gelangen .
das hat bei mir nie geklapptSie scheinen nativ auf Konsole / Desktop zu funktionieren, aber nicht über SSH mit PuTTY./
sich dies in der Nähe der Unterseite der Tastatur und\
in der Nähe der Oberseite befindet.Wenn Sie einen Befehl wünschen , können Sie eine Funktion in Ihre schreiben
.bashrc
oder.bash_aliases
die Zeilenanzahl verwenden vonwc
:Jetzt tippe einfach
nano-end filename
, um die Datei bis zur letzten Zeile zu öffnen!quelle
Ctrl+ Endfunktioniert, wenn Sie eine aktuelle (kompilierte) Version des
nano
Editors haben.Wenn Sie nicht wissen, wie es geht, können Sie den Compiling Nano Editor mit Optionen lesen
Beachten Sie, dass es in neueren Systemen, zB auf Basis von Ubuntu 18.04, bereits eine solche Version gibt.
Aus dem Changelog :
12. April 2017 - GNU nano 2.8.1
... bewirkt, dass ^ Home und ^ End an den Anfang und das Ende der Datei gehen (auf Terminals, die diese Tastenanschläge unterstützen) ...
PuTTY gegen Cygwin
Ich habe PuTTY nicht installiert, hier müssen wir uns auf andere Behauptungen stützen, dass diese Tastenkombinationen unter Windows 10 + PuTTY + SSH + nano> 2.8.1 nicht funktionieren.
Auf der anderen Seite habe ich Cygwin und Windows 10 + Cygwin + SSH + Nano> 2.8.1 funktioniert Ok.
quelle
OP möchte, dass ich eine Antwort hinzufüge, um zur letzten Zeile in zu springen
vim
.ESC+ ShiftGbringt Sie zum Anfang der letzten Zeile.
ESC+ ShiftGAbringt Sie zum Ende der letzten Zeile und der Einfügemodus wird aktiviert.
quelle
C-o G
. Nicht, dass du das tun würdest, wenn du vim right benutzt ...Um in nano direkt zum Ende der Datei zu gelangen, geben Sie einfach: Alt+ ein/
quelle