본문 바로가기
리눅스

vi 편집기의 주요 명령어

by 스노위13 2025. 2. 14.

1. 모드 전환

  • vi는 기본적으로 명령 모드에서 시작합니다.
  • 명령 모드 → 입력 모드: i, a, o 명령어 사용
  • 입력 모드 → 명령 모드: Esc 키
  • 명령 모드 → 명령 행 모드: : 입력

2. 명령 모드 (Command mode)

텍스트를 탐색하거나 수정 작업을 실행하는 모드입니다.

탐색 명령어

  • h, j, k, l: 커서를 왼쪽(h), 아래(j), 위(k), 오른쪽(l)으로 이동
  • Ctrl + d/u: 화면을 절반씩 아래(Ctrl + d) 또는 위(Ctrl + u)로 스크롤
  • gg: 파일의 맨 처음으로 이동
  • G: 파일의 맨 끝으로 이동
  • :n: n번째 줄로 이동 (예: :10 → 10번째 줄로 이동)

편집 명령어

  • x: 현재 커서 위치의 문자 삭제
  • dd: 현재 줄 삭제
  • yy: 현재 줄 복사
  • p: 커서 아래에 붙여넣기
  • u: 마지막 작업 취소 (Undo)
  • Ctrl + r: 작업 다시 실행 (Redo)

단어 및 줄 편집

  • dw: 커서 위치부터 단어 끝까지 삭제
  • d$: 커서 위치부터 줄 끝까지 삭제
  • cw: 커서 위치부터 단어 끝까지 변경 (입력 모드로 전환)
  • C: 커서 위치부터 줄 끝까지 변경

3. 입력 모드 (Insert mode)

텍스트를 작성하거나 수정하는 모드입니다. 다음 명령으로 진입할 수 있습니다.

입력 모드로 전환

  • i: 커서 앞에 삽입
  • a: 커서 뒤에 삽입
  • o: 현재 줄 아래에 새 줄 삽입
  • O: 현재 줄 위에 새 줄 삽입

입력 모드에서 Esc를 누르면 다시 명령 모드로 돌아갑니다.


4. 명령 행 모드 (Command-line mode)

:로 진입하며 파일 저장, 종료 등의 명령을 실행할 수 있습니다.

파일 저장 및 종료

  • :w: 파일 저장
  • :q: vi 종료
  • :wq 또는 :x: 저장 후 종료
  • :q!: 저장하지 않고 강제 종료

찾기 및 바꾸기

  • /텍스트: 텍스트를 검색 (예: /hello)
  • n: 다음 검색 결과로 이동
  • N: 이전 검색 결과로 이동
  • :s/old/new: 현재 줄에서 old를 new로 바꾸기
  • :%s/old/new/g: 파일 전체에서 old를 new로 모두 바꾸기

5. 기타 유용한 명령어

  • :set nu: 줄 번호 표시
  • :set nonu: 줄 번호 숨기기
  • :set hlsearch: 검색 결과 강조
  • :set nohlsearch: 검색 결과 강조 제거
  • :syntax on/off: 구문 강조 켜기/끄기

'리눅스' 카테고리의 다른 글

리눅스 - 터미널 명령어들을 알아보자  (0) 2022.06.02

댓글