“Swap file xxx sudah ada” saat mengedit file konfigurasi apache di vim?

9

Menggunakan vim saya terus menerima pesan yang mengatakan "Tukar file xxx sudah ada" ketika saya mengedit konfigurasi apache. Namun, saya tidak melihatnya di direktori aktif di tmp. Bagaimana cara saya menghapus ini?

dzm
sumber

Jawaban:

16

File swap Vim biasanya disembunyikan (Unix file tersembunyi dimulai dengan a .). Untuk melihat file tersembunyi dan juga file biasa, Anda perlu ls -A(mnemonic: A untuk Semua). Itu akan menunjukkan kepada Anda apakah file swap ada atau tidak.

quanticle
sumber
5

Ini terjadi hanya ketika file yang Anda coba edit tidak disimpan sepenuhnya ke disk. Skenario adalah:

  1. Anda mematikan sistem Anda dengan tidak benar, ketika file masih terbuka di vi / vim.

  2. ketika file Anda sedang diakses secara bersamaan melalui konsol yang berbeda / sama di vi.

vi / vim membuat file .swp setiap kali file dibuka di vi / vim. Setiap kali file dibuka di vi / vim, vi / vim memeriksa file ini dan jika ditemukan peringatan ini muncul

Ini bisa dihindari dengan dua cara

  1. satu dengan menghapus file .swp yang dinamai

"path / of / the / file / you / was / editing / .your_file_name.swp"

  1. Anda juga dapat memilih mode pemulihan vi / vim saat membuka file dan menekan opsi pemulihan.

Saya hanya berbicara tentang skenario pertama dan aman untuk skenario itu saja. Skenario kedua adalah kasus yang berbeda.

kaji
sumber
Jika ada perubahan yang belum disimpan, Anda dapat memulihkannya menggunakan vi -r(atau vim -rjika Anda mau). Saya biasanya menulis file yang dipulihkan ke file sementara dan diffitu terhadap file utama. (Saya tidak terlalu percaya pemulihan untuk tidak kehilangan informasi.)
Keith Thompson
1

Jika file yang Anda edit dipanggil httpd.confmaka file swap akan dipanggil .httpd.conf.swp. Itu disembunyikan kecuali jika Anda menambah argumen -aAnda ls.

ls -a /etc/httpd/conf/
tylerl
sumber
1

Untuk menghapus file swap di Linux gunakan perintah ini

rm .filename.swp
amareswar reddy
sumber
0

Dalam pesan, Anda akan melihat path lengkap ke file. Anda dapat mengatasinya dengan menyalin-lekatkan jalur sebagai berikut:

rm -f /path/to/the/file

sumber