내가 작성하는 프로그램에서 나는 종종 파일의 데이터를 읽고 씁니다. 이 작업을 수행하는 과정에서 실수로 스왑 .swp
파일을 생성한 것을 발견했습니다.
무슨 일이 일어난 것 같나요? 문제를 재현해야 한다면 스왑 파일이 나타나는 원인은 무엇입니까?
답변1
.swp 파일은 운영 체제 측면에서 스왑 파일이 아닙니다. 상태 파일입니다. 마지막 저장 이후의 변경 사항(마지막 200자 제외), 저장된 버퍼, 저장되지 않은 매크로 및 실행 취소 구조를 유지합니다.
VIM 도움말에서 자세한 내용을 확인할 수 있습니다 vim +help\ swap-file
. 충돌(정전, 운영 체제 충돌 등)이 발생하는 경우 이 스왑 파일을 사용하여 변경 사항을 되돌릴 수 있습니다. 스왑 파일의 변경 사항을 원본 파일에 저장한 후 vim을 종료하고 스왑 파일을 직접 삭제해야 합니다.
답변2
답변3
.swp 파일은 파일이 편집되고 있음을 나타내기 위해 편집기(일반적으로 vim)가 만든 잠금 파일에 지나지 않습니다. 이렇게 하면 다른 vim 인스턴스에서 파일을 열거나 네트워크의 누군가가 열면 파일이 편집되고 있다는 경고가 표시됩니다.
수동으로 삭제할 필요는 없습니다. 편집기는 편집기에서 파일을 닫은 후 스왑 파일을 삭제합니다.
답변4
방금 31GB 파일에 대해 mv 명령을 실행하고 편집 작업 없이 13GB .swp 파일을 생성했습니다.
mv X.csv Y.csv
Y.csv 및 .Y.csv.swp가 생성되었습니다.
CentOS 6.5, ext4 파일 시스템