Ich habe sehr große Dateien (mehr als 10 GB). Ich brauche nur einige Zeilen vom Anfang der Datei. Ist es möglich (in vim), den Rest der Datei (von der aktuellen Zeile bis zum Ende der Datei) zu löschen?
Ich habe sehr große Dateien (mehr als 10 GB). Ich brauche nur einige Zeilen vom Anfang der Datei. Ist es möglich (in vim), den Rest der Datei (von der aktuellen Zeile bis zum Ende der Datei) zu löschen?
Antworten:
dG wird aus der aktuellen Zeile bis zum Ende der Datei gelöscht
dCtrl+ Endwird vom Cursor bis zum Ende der Datei gelöscht
Wenn diese Datei jedoch so groß ist, wie Sie sagen, ist es möglicherweise besser, die ersten Zeilen mit zu lesen, head
als die Datei zu bearbeiten und zu speichern.
head hugefile > firstlines
(Wenn Sie unter Windows arbeiten, können Sie den Win32-Port von verwenden. head
)
head
geliefert werden, z. B.: head -n20 hugefile
für die ersten 20 Zeilen. n standardmäßig 10.
head
? Die Verwendung von dG für eine große Datei (1G +) nimmt viel Zeit in Anspruch (z. B. 5 Minuten).
dgg
wird von der aktuellen Zeile bis zum Anfang der Datei gelöscht.
Gehen Sie zur ersten Zeile, aus der Sie löschen möchten, und drücken Sie die Tasten dG
:.,$d
Dadurch wird der gesamte Inhalt von der aktuellen Zeile bis zum Ende der Datei gelöscht. Dies ist sehr nützlich, wenn Sie sich mit der Erzeugung oder dem Strippen von Testvektoren befassen.
:<line number>,$d
zum Beispiel: :3,$d
löscht von Zeile 3 bis zum Ende der Datei
head -n <number_of_lines> <filename> > <truncated_filename>
-n