JSCODE Logo
프로그래밍 과외블로그후기멘토진
회사명 : JSCODE대표 : 박재성사업자 등록번호 : 244-22-01557통신판매업 : 제 2023-인천미추홀-0381 호
학원 명칭 : 제이에스코드(JSCODE)원격학원학원설립ㆍ운영 등록번호 : 제6063호

서울특별시 구로구 경인로 20가길 11(오류동, 아델리아)

Copyright ⓒ 2025 JSCODE - 최상위 현업 개발자들의 프로그래밍 교육 All rights reserved.

이용약관개인정보처리방침
← 블로그 목록으로 돌아가기

vim 에디터 기본 사용법 - 2

JSCODE 박재성
JSCODE 박재성
2025-12-06
author
JSCODE 박재성
category
Linux
createdAt
Dec 6, 2025
series
비전공자도 이해할 수 있는 리눅스 입문/실전
slug
vim-basics-2
type
post
updatedAt
Dec 6, 2025 05:39 AM

✅ 강제 종료

기존 app.txt 파일을 열어서 텍스트를 일부 수정해보자.
$ vi app.txt
notion image
그런데 갑자기 수정한 내용을 저장하고 싶지 않다는 생각이 들었다. 수정한 텍스트를 저장하지 않고 vim을 종료하기 위해 COMMAND 모드에서 :q를 입력하고 Enter를 눌렀다.
 
notion image
그랬더니 하단에 빨간색으로 No write sice last change (add ! to override)라는 에러 메시지가 떴다. 이 에러 메시지를 해석하자면 다음과 같다.
 
파일을 수정했는데 저장을 하지 않은 상태입니다. 저장하지 않고 종료하려면 !를 붙여서 강제 종료하세요.
 
이 에러 메시지에 따라 저장하지 않고 강제 종료를 하려면 아래와 같이 명령어를 입력해야 한다.
:q!
notion image
위 명령어를 입력해보면 정상적으로 vim이 잘 종료되는 거 확인할 수 있다. 이 기능이 바로 강제 종료 기능이다.
 
 

✅ 파일을 수정하다 vim이 비정상적으로 종료 됐을 때

기존 app.txt 파일을 열어서 텍스트를 일부 수정해보자.
$ vi app.txt
notion image
 
그런 뒤에 터미널 창을 새로고침해서 다시 접속한 뒤 vim으로 app.txt를 열어보자. 아래와 같은 화면이 뜰 것이다.
notion image
가장 맨 마지막 줄에 이런 문장이 있다. 필수로 알아야 하는 옵션에 대해서만 설명하겠다.
[O]pen Read-Only, (E)dit anyway, (R)ecover, (D)elete it, (Q)uit, (A)bort
  • (R)ecover : r 버튼을 누르고 Enter를 누르면 이전에 편집한 내용을 복구한 뒤, 이어서 파일을 수정할 수 있게 된다.
  • (D)elete it : d 버튼을 누르면 이전에 편집한 내용을 복구하지 않고, 기존 파일에서 수정할 수 있게 된다.
  • (Q)uit : q 버튼을 누르면 아무 작업도 하지 않고 그냥 vim을 종료한다.
 
[실습]
  1. 아무 작업도 하고 싶지 않을 때는 q 버튼을 눌러 vim을 종료하면 된다.
  1. 이전에 편집한 내용을 복구하지 않고, 기존 파일에서 수정을 하고 싶을 때는 d 버튼을 누르면 된다. 그리고 :wq로 수정한 내용을 저장하면 된다.
  1. 이전에 편집한 내용을 복구한 뒤, 이어서 파일을 수정하고 싶을 때는 r 버튼을 누르면 된다. 그리고 :wq로 수정한 내용을 저장하고 .app.txt.swp 파일을 삭제하면 된다.
 
 
[작동 원리]
에러 메시지를 다시 한 번 살펴보면 .app.txt.swp라는 파일을 발견했다고 한다. 이 파일은 도대체 뭘까?
notion image
.swp라는 확장자를 가진 파일은 vim에서 편집 중이던 작업 내용을 임시 저장해서 비정상 종료 시 복구할 수 있도록 하는 파일이다. 이 파일은 vim에서 INSERT 모드로 파일을 수정하는 순간 생성된다.
 
실제 그런지 vim으로 파일을 수정하고나서 새로고침으로 강제 종료해보자. 그러고 ls -a(숨김파일까지 포함해서 디렉터리 내부 파일 조회) 명령어를 통해 확인해보자.
notion image
이 .swp 파일 덕분에 비정상적으로 vim이 종료됐더라도 복구할 수 있었던 것이다.
 
 
👨🏻‍🏫
이 외에도 수많은 vim 명령어(https://vim.rtorr.com/lang/ko)가 있다. 근데 처음부터 다 알 필요 없다. 딱 필요한 명령어 위주로 처음에만 익혀두면 된다. 그러고 불편하다고 느끼거나 그때그때 필요한 기능에 대해서만 추가로 공부하면서 써먹으면 된다.
 
 
author
JSCODE 박재성
category
Linux
createdAt
Dec 6, 2025
series
비전공자도 이해할 수 있는 리눅스 입문/실전
slug
type
series-footer
updatedAt
Dec 6, 2025 05:28 AM
📎
이 글은 비전공자도 이해할 수 있는 리눅스 입문/실전 강의의 수업 자료 중 일부입니다.