- vi 와 vim은 다른 프로그램이다.
- vim은 vi의 기능 강화판 정도로 이해하면 된다.
vi to_edit_file_name
# 또는
vim to_edit_file_name
# 파일을 연 다음 다음 키들을 누르면 화면 좌측 하단에 현재 상태가 표시된다.
# 수정, 입력 모드(에디트모드) 등에서 나가려면 [ESC] 키를 누른다.
i : insert. 현재 커서가 위치한 곳 부터 내용을 입력할 수 잇다.
a : add. 현재 커서가 위치한 곳 다음으로 포커스가 이동하며, 그 자리부터 내용을 입력할 수 있다.
gg: 에디트모드가 아닌 경우 g를 빠르게 두 번 연속 입력하면 파일의 처음으로 이동한다.
shift+g : 에디트모드가 아닌 경우 파일의 가장 끝으로 이동한다.
x : 에디트 모드가 아닌 경우 텍스트가 지워진다. [delete] 키와 동일하게 동작한다.
dd : 에디트 모드가 아닌 경우 현재 커서가 위치한 한줄의 내용을 삭제한다.
dl : 에디트 모드가 아닌 경우 현재 커서가 위치한 줄과 아랫 줄이 삭제도니다.
u : 에디트 모드가 아닌 경우 직전 작업으로 돌아간다. (ctrl+z와 같다)
/찾을_내용 : 에디트 모드가 아닌 경우 / 를 누르고 파일 내에서 찾고자 하는 텍스트를 입력하면 해당 텍스트를 찾을 수 있다.
:set number : 에디트 모드가 아닌 경우 : 를 누르고 set number 입력 시 줄 번호가 좌측에 표시된다.
| 입력 |
동작 |
ESC (여러 번) |
진행 중인 작업을 멈추고 명령 모드로 나온다 |
:q |
종료 |
:q! |
저장하지 않고 강제 종료. 변경 사항이 있으면 :q 만으로는 종료되지 않는다 |
:wq |
저장하고 종료 |
:wq! |
쓰기 방지가 걸린 파일도 강제로 저장한다. 권한이 필요하다 |
:%s/찾을문자열/바꿀문자열
:%s/찾을문자열/바꿀문자열/i
:%s/찾을문자열/바꿀문자열/g
#찾을문자열찾은문자열 이 있을 경우 바꿀문자열바꿀문자열 로 변경된다.
#g 옵션이 없는 경우 찾을문자열찾을문자열 은 바꿀문자열찾을문자열 로 변경된다.
:%s/\/찾을\/문자\/열/\/바꿀\/문자열/g
# 자동 주석 해제
set formatoptions-=r
# 자동 주석 활성화
set formatoptions+=r
- 서버에서 YAML · JSON · XML 같은 설정 파일을 자주 고친다면 기본 vim 설정만으로는 실수가 잦다. 특히 YAML 은 탭 문자 하…