Mit vim erhalte ich immer wieder die Meldung "Swap file xxx existiert bereits", wenn ich eine Apache-Konfiguration bearbeite. Ich sehe es jedoch nicht im Arbeitsverzeichnis von in tmp. Wie lösche ich das?
Vim-Auslagerungsdateien sind normalerweise ausgeblendet (ausgeblendete Unix-Dateien beginnen mit a .
). Um sowohl versteckte als auch reguläre Dateien anzuzeigen, müssen Sie ls -A
(Mnemonik: A für alle). Das sollte Ihnen zeigen, ob eine Auslagerungsdatei vorhanden ist oder nicht.
Dies geschieht nur, wenn die Datei, die Sie bearbeiten wollten, nicht vollständig auf der Festplatte gespeichert ist. Szenarien sind:
Sie fahren Ihr System nicht ordnungsgemäß herunter, wenn eine Datei in vi / vim noch geöffnet ist.
wenn auf Ihre Datei gleichzeitig über verschiedene / gleiche Konsolen in vi zugegriffen wird.
vi / vim erstellt eine SWP-Datei, wenn eine Datei in vi / vim geöffnet wird. Jedes Mal, wenn eine Datei in vi / vim geöffnet wird, sucht vi / vim nach dieser Datei, und wenn sie gefunden wird, wird diese Warnung angezeigt
Dies kann auf zwei Arten vermieden werden
"Pfad / der / Datei / Sie / waren / bearbeiten / .Ihr_Dateiname.swp"
Ich spreche nur über das erste Szenario und es ist nur für dieses Szenario sicher. Das zweite Szenario ist der andere Fall.
vi -r
(odervim -r
wenn Sie dies bevorzugen) wiederherstellen . Normalerweise schreibe ich die wiederhergestellte Datei in eine temporäre Datei unddiff
gegen die Hauptdatei. (Ich vertraue nicht ganz darauf, dass die Wiederherstellung keine Informationen verliert.)Wenn die Datei, die Sie bearbeiten, aufgerufen
httpd.conf
wird, wird die Auslagerungsdatei aufgerufen.httpd.conf.swp
. Es ist ausgeblendet, es sei denn, Sie fügen-a
Ihrenls
Argumenten hinzu.quelle
Verwenden Sie diesen Befehl, um die Auslagerungsdatei unter Linux zu entfernen
quelle
In der Nachricht sollte der vollständige Pfad zur Datei angezeigt werden. Sie können es ändern, indem Sie den Pfad wie folgt kopieren:
quelle