[GELÖST] Ein „kleines“ Problem mit VIM

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
Antworten
sonya
Beiträge: 84
Registriert: 28.07.2007 07:55:33

[GELÖST] Ein „kleines“ Problem mit VIM

Beitrag von sonya » 13.07.2023 16:36:18

Hallo Alle zusammen.

ich habe ein kleines Problem mit VIM und das jeweilige Abspeichern einer Datei.

Also, Konsole im aktuellem Verzeichnis. Ein:

Code: Alles auswählen

vim *
öffnet im aktuellem Verzeichnis alle Dateien.
Ich springe in der ersten Datei zu einer bestimmten Zeile und kopiere die per »yy« in einen Puffer.

Nun möchte ich per»:w „Puffer“« die Datei mit der Zeichenfolge die im Puffer gespeichert ist, speichern.

Wie füge ich hinter »:w « den Inhalt des Puffers (oder den Inhalt von Zeile xy ein und kann somit die Datei per neuen Namen bestehend aus Pufferinhalt oder
besser noch:

die Datei einfach mit dem Zeichenfolgen in der Zeile xy abspeichern?
Vielleicht muss man die Datei gar nicht erst öffnen, um sie einfach mit der Zeichenfolge aus Zeile xy umzubenennen?

Einen schönen Nachmittag Allen
Zuletzt geändert von sonya am 22.07.2023 17:08:18, insgesamt 1-mal geändert.

JTH
Moderator
Beiträge: 3023
Registriert: 13.08.2008 17:01:41
Wohnort: Berlin

Re: Ein „kleines“ Problem mit VIM

Beitrag von JTH » 13.07.2023 17:03:19

sonya hat geschrieben: ↑ zum Beitrag ↑
13.07.2023 16:36:18
Wie füge ich hinter »:w « den Inhalt des Puffers
Für diesen „einfachen“ Fall, wenn du nicht in ein bestimmtes, anderes Register (als Stichwort zum Nachschlagen) kopiert hast:

Code: Alles auswählen

:w Strg+r "
Den Zeilenumbruch am Ende muss du noch entfernen. Um das zu vermeiden könnt man die Zeile statt yy mit

Code: Alles auswählen

0 y $
kopieren ;)

sonya hat geschrieben: ↑ zum Beitrag ↑
13.07.2023 16:36:18
Vielleicht muss man die Datei gar nicht erst öffnen, um sie einfach mit der Zeichenfolge aus Zeile xy umzubenennen?
Die n-te Zeile einer Datei bekommst du auf diversen Wegen, N jeweils durch die Zeilennummer und FILE durch den Dateipfad ersetzt:

Code: Alles auswählen

awk NR==N FILE
sed -n Np FILE
tail -n+N FILE | head -n 1   # bisschen lang …
echo N | ed -s FILE          # hoffe, das stimmt (Meillo?)
etc.
Das Umbenennen ist dann deine Aufgabe ;)
Manchmal bekannt als Just (another) Terminal Hacker.

sonya
Beiträge: 84
Registriert: 28.07.2007 07:55:33

Re: Ein „kleines“ Problem mit VIM

Beitrag von sonya » 14.07.2023 14:20:09

Hallo,

herzlichen Dank für die Informationen und die Tips!
Ich habe das Ganze jetzt innerhalb von Vim und per Macro nach Deiner Anleitung lösen können!

Code: Alles auswählen

0 y $
und

Code: Alles auswählen

:w Strg+r "
Kannte ich noch nicht. Danke.

Die Suche nach einer Zeichenfolge und die Zwei o.g. in ein Makro integriert und es hat für alle Dateien funktioniert.
Danke!

Für die Umbenennung mittels AWK eröffne ich dann ein neues Thema.

Antworten