Apa yang menyebabkan swap file dibuat?


31

Sebagai bagian dari program yang saya tulis, saya terus membaca dan menulis data dari file. Saya perhatikan bahwa sebagai bagian dari melakukannya, saya secara tidak sengaja membuat .swpfile swap .

Menurut Anda apa yang sedang terjadi? Apa yang akan menyebabkan file swap muncul jika Anda harus mereproduksi masalah?

Jawaban:


41

File .swp bukan file swap dalam arti OS. Ini adalah file status. Itu membuat perubahan Anda sejak penyimpanan terakhir (kecuali 200 karakter terakhir), buffer yang telah Anda simpan, makro yang belum disimpan dan struktur undo.

Anda dapat membaca lebih dalam membantu VIM ini: vim +help\ swap-file. Jika ada kerusakan (kegagalan daya, kerusakan OS, dll.), Maka Anda dapat memulihkan perubahan menggunakan file swap ini. Setelah menyimpan perubahan dari file swap ke file asli, Anda harus keluar dari vim dan menghapus file swap sendiri.


Untuk beberapa alasan, file ~ / .swp saya adalah 11,7GB. Saya baru saja menghapusnya.
Daniel Cheung

19

.swpfile dibuat oleh Vim , mereka harus dihapus secara otomatis ketika Anda menutup file dan keluar dari editor.


1
Bisakah mereka dibuat dari luar Vim? Dalam kasus saya file ditulis dari program saya secara langsung, tanpa menggunakan editor
JAM

@ JK: Bahasa dan perpustakaan apa yang ditulis dengan program ini?
jwodder

5
@ JK Umumnya tidak, ini adalah fitur Vim. Saya ragu file-file ini ditulis langsung dari program Anda tanpa Anda sadari, itu tidak masuk akal. Jauh lebih mungkin bahwa Anda bingung, file-file ini sedang dibuat saat Anda mengedit file dengan Vim, dan Anda menghubungkannya dengan program Anda.
Juliano

4

File .swp tidak lain adalah sejenis file kunci yang Anda editor, umumnya vim, buat untuk menunjukkan bahwa file sedang diedit. Dengan cara ini jika Anda membuka file dalam contoh vim lain jika seseorang di jaringan melakukan itu, mereka akan melihat peringatan bahwa file sedang diedit.
Anda tidak perlu menghapusnya secara manual. Editor Anda akan menghapus file swap setelah Anda menutup file di editor Anda.


2

Saya baru saja menjalankan perintah mv pada file 31GB dan file .swp 13GB dibuat, tidak ada pengeditan yang terlibat.

mv X.csv Y.csv menciptakan Y.csv dan .Y.csv.swp

CentOS 6.5, sistem file ext4


Terima kasih. Pernahkah Anda memiliki pengalaman serupa dengan `rsync 'juga?
Imriss
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.