Wie speichern Sie die Datei, an der Sie arbeiten, als neue Datei?

10

Es gibt Zeiten, in denen ich Änderungen an einer Datei testen möchte, bevor ich das Original überschreibe. Kann ich eine zu bearbeitende Datei auf irgendeine Weise in einer neuen Datei speichern?

Dom
quelle
Die Off-Topic-Antwort wäre, ein VCS vorzuschlagen. Zum Beispiel könnte der Index von git nützlich sein
johannes

Antworten:

17

Sie können dem Befehl :woder einen Parameter :writezum Speichern in einer anderen Datei zuweisen. Zum Beispiel, um den aktuellen Puffer zu speichern in /tmp/data.txt:

:w /tmp/data.txt

Beachten Sie jedoch, dass dadurch Ihr Puffer nicht auf diese andere Datei umgeschaltet wird. Wenn Sie also weiter bearbeiten und dies nur tun :w, wird dies in der aktuellen Datei gespeichert, nicht in der anderen. Verwenden Sie den folgenden :editBefehl, um zur anderen Datei zu wechseln :

:e /tmp/data.txt

Speichern Sie dazu in einem anderen Schritt in einer anderen Datei und wechseln Sie zu dieser Datei. Verwenden Sie dazu den folgenden :saveasBefehl:

:sav /tmp/data.txt
Janos
quelle
5

Vim hat einen "Backup-Modus", der von :set backupoder aktiviert werden kann :set patchmode. In diesem Modus speichert Vim automatisch eine Sicherungskopie der von Ihnen geschriebenen Dateien.

Wenn Sie beispielsweise :set patchmode=.origeine vorhandene Datei ausgeben und bearbeiten , behält Vim bei normaler somefile.txtAusgabe :weine Kopie der alten Datei als somefile.txt.origund speichert den neuen Inhalt als somefile.txt.

200_Erfolg
quelle
0

Ja, es gibt einen Weg. :w new_file_name

Nebril
quelle
0

Geben Sie einfach einen neuen Dateipfad im :wBefehl an -:w newfile.foo

Kit
quelle