vi 에디터 스왑파일 생성시 해결방법
vi 에디터 또는 vim 에디터를 사용하다가 파일을 실행하는 경우 다음과 같은 경고를 마주하게 될 때가 있습니다. (여기서는 한국어 버전 리눅스를 사용했는데, 자신의 언어 설정에 따라 경고가 영어로 표기될 수도 있습니다.)

경고 내용을 해석해 보자면 스왑파일(.swp)이 생성되어 있으니 해당 파일에 대해 읽기전용(O), 강제 편집(E), 복구(R), 삭제(D)... 등의 행동들 중 하나를 실행하라는 뜻입니다.
E325: 주목
Found a swap file by the name ".text.txt.swp"
          소유자: root   날짜: Sun Jun 17 23:27:55 2018
         파일 이름: ~root/text.txt
          수정: 예
         사용자 이름: root  호스트 이름: server
        프로세스 ID: 27272
While opening file "text.txt"
             날짜: Sun Jun 17 23:27:20 2018
 
 
(1) Another program may be editing the same file.  If this is the case,
    be careful not to end up with two different instances of the same
    file when making changes.  Quit, or continue with caution.
(2) An edit session for this file crashed.
    만약 그렇다면 ":recover" 혹은 "vim -r text.txt"
    을 사용하여 복구하십시오 (":help recovery" 참고).
    이미 복구하셨었다면 스왑파일 ".text.txt.swp"
    을(를) 지우셔야 이 메시지가 사라집니다.
 
 
스왑 파일 ".text.txt.swp"이 이미 존재합니다!
읽기 전용으로 열기([O]), 무조건 편집((E)), 복구((R)), 삭제((D)), 끝내기((Q)), 버리기((A)):
cs



스왑파일(.swp)
vi 에디터 스왑파일은 파일을 편집하다가 예기지 않게 종료해버린 경우 또는 다른 사용자가 먼저 해당 파일을 실행하고 있는 경우에 접근하려는 경우 생성됩니다. 이때 원본 파일이 스왑파일로 변경된 것이 아니라 원본 파일은 그대로 있고 스왑파일이 생성되는 것입니다.

스왑파일은 .원본파일명.swp 형식으로 생성됩니다. 즉 숨김파일이며 .swp 확장자를 가집니다.



경고 해결하기
위와 같은 경고가 나타나지 않게 하려면 스왑파일을 제거하면 됩니다. 먼저 스왑파일을 확인합니다. 스왑파일은 숨김파일이기 때문에 ls -a 명령어를 사용합니다.



해당 스왑파일을 제거합니다. 스왑파일이 제거된 이후 다시 vi 에디터로 파일을 편집합니다.
rm .text.txt.swp                                                                        
cs




vi 에디터 편집하다가 종료됐을때 스왑파일로 내용 복구하기
만약 vi에디터로 내용을 편집하다가 실수로 종료해버린 경우라면 스왑파일을 통해 복구가 가능합니다. 경고 문구가 나타났을때 R을 입력한 후 엔터를 입력하면 종료되기 직전 내용인 상태로 편집에 들어갑니다. 이때 :wq를 입력해 저장한 후 스왑파일을 제거하면 됩니다.
(2) An edit session for this file crashed.
    만약 그렇다면 ":recover" 혹은 "vim -r text.txt"
    을 사용하여 복구하십시오 (":help recovery" 참고).
    이미 복구하셨었다면 스왑파일 ".text.txt.swp"
    을(를) 지우셔야 이 메시지가 사라집니다.
 
 
스왑 파일 ".text.txt.swp"이 이미 존재합니다!
읽기 전용으로 열기([O]), 무조건 편집((E)), 복구((R)), 삭제((D)), 끝내기((Q)), 버리기((A)):        
cs

블로그 이미지

도로락

IT, 프로그래밍, 컴퓨터 활용 정보 등을 위한 블로그

댓글을 달아 주세요! 질문 환영합니다!