#. 파일 열 때
vi +/[커서 두고 싶은 문구] test.txt
→ 예시) vi +/return test.txt → 커서가 return에 가있는 상태로 txt파일이 열린다.
#. 글 입력
| a | 커서 위치의 다음 칸부터 끼워넣기 |
| A | 커서가 있는 줄의 끝에서부터 끼워넣기 |
| i | 커서 위치부터 끼워넣기 |
| I | 커서가 있는 줄의 맨 앞에서부터 끼워넣기 |
| o | 커서 바로 아래에 줄을 만들고 끼워넣기 |
| O | 커서 바로 위에 줄을 만들고 끼워넣기 |
#. 커서(칸, 줄 - 글자) 이동
| h | 한칸 왼쪽으로 이동 |
| j | 한줄 아래로 이동 |
| k | 한줄 위로 이동 |
| l | 한칸 오른쪽으로 이동 |
#. 커서(단어) 이동
| w | 다음 단어의 첫 글자로 이동 |
| b | 이전 단어의 첫 글자로 이동 |
| W | 다음 단어의 첫 글자로 이동 (단어 구분 방식 space) |
| B | 이전 단어의 첫 글자로 이동 (단어 구분 방식 space) |
| e | 단어의 마지막 글자로 이동 (단어 구분 방식 space) |
| E | 단어의 마지막 글자로 이동 (단어 구분 방식 space) |
| + | 다음 줄의 첫 글자로 이동 |
| - | 윗줄의 첫 글자로 이동 |
| nG | 원하는 n번째 라인으로 이동 |
#. 커서(줄) 이동
| 0 | 그 줄의 맨 처음으로 이동 (공백 포함) |
| ^ | 그 줄의 첫 글자로 이동 (공백 미포함) |
| $ | 그 줄의 마지막 글자로 이동 |
#. 커서(문장, 문단) 이동
| ( | 이전 문장의 첫 글자로 이동 (문장 구분 . 혹은 ? 등 문장의 끝을 나타내는 기호) |
| ) | 다음 문장의 첫 글자로 이동 (문장 구분 . 혹은 ? 등 문장의 끝을 나타내는 기호) |
| { | 이전 문단으로 이동 (문단 구분 라인에 빈 칸) |
| } | 다음 문단으로 이동 (문단 구분 라인에 빈 칸) |
#. 페이지 이동
| Ctrl + u | 한 페이지 위 |
| Ctrl + d | 한 페이지 아래 |
#. 화면 단위 이동
| Ctrl + y | 커서는 움직이지 않고, 화면이 아래로 한 줄씩 이동 |
| Ctrl + e | 커서는 움직이지 않고, 화면이 위로 한 줄씩 이동 |
| Ctrl + f | 한 화면 아래로 이동 |
| Ctrl + b | 한 화면 위로 이동 |
#. 극단적 이동
| gg | 맨 위로 이동 |
| G | 맨 아래로 이동 |
#. 글 수정
| r | 커서 위치의 한 글자 교체 |
| E | 커서 위치부터 <ESC>를 누를때까지 다른 글자로 교체 |
| s, cl | 커서 위치의 글자 한개를 여러 글자로 교체 |
| ch | 커서 바로 앞의 글자 한개를 여러 글자로 교체 |
| cw | 커서 위치의 한 단어를 교체 |
| c0 | 커서 위치부터 줄의 처음까지 교체 |
| C, c$ | 커서 위치부터 줄의 끝까지 교체 |
| cc | 커서가 있는 줄을 교체 |
| cj | 커서가 있는 줄과 그 다음 줄을 교체 |
| ck | 커서가 있는 줄과 그 앞줄을 교체 |
#. 글 삭제
| x, dl | 커서 위치의 글자 삭제 |
| X, dh | 커서 바로 앞의 글자 삭제 |
| dw | 한 단어를 삭제 |
| d0 | 커서 위치부터 줄의 처음까지 삭제 |
| D, d$ | 커서 위치부터 줄의 끝까지 삭제 |
| dd | 커서가 있는 줄을 삭제 |
| dj | 커서가 있는 줄과 그 다음 줄을 삭제 |
| dk | 커서가 있는 줄과 그 앞줄을 삭제 |
#. 부분(선택) 삭제
원하는 위치로 이동 후
ngg (현재 위치부터 n줄 삭제)
원하는 위치 이동 후
dG (현재 위치 이하 모두 삭제)
#. 전체 삭제
gg + dG
#. 복사 & 붙여넣기
| yw | 커서 위치부터 단어의 끝까지 복사 |
| y0 | 커서 위치부터 줄의 처음까지 복사 |
| y$ | 커서 위치부터 줄의 끝까지 복사 |
| yy | 커서가 있는 줄을 복사 |
| yj | 커서가 있는 줄과 그 다음 줄을 복사 |
| yk | 커서가 있는 줄과 그 앞줄을 복사 |
| p | 커서의 다음 위치에 붙여넣기 |
| P | 커서가 있는 위치에 붙여넣기 |
#. 부분(선택) 복사 & 붙여넣기
원하는 위치 이동 후
nyy (현재 위치부터 n줄 복사)
p
원하는 위치 이동 후
yG (현재 위치 이하 모두 복사)
p
#. 전체 복사 & 붙여넣기
gg + yG
p
#. 문자열 찾기
| /[문자] | 문자열 찾기 |
| /\c[문] | 대소문자 구분 없이 문자열 찾기 |
#. 주석 처리 & 주석 해제
여러 줄 주석 처리
visual mode(v) 진입
j, k로 범위 선택
:norm i# 입력
여러 줄 주석 해제
visual mode(v) 진입
j, k로 범위 선택
:norm 1x 입력 (문장의 첫 글자 삭제, 2x면 문자의 첫 두 글자 삭제)
#. 치환
예시
:1,$ s/artartart/white/g


#. 기타
| u | 작업 취소 |
| U | 그 줄에 행해진 작업 모두 취소 |
| Ctrl + r | 작업 재실행 (취소를 취소) |
| . | 조금 전에 했던 명령을 반복 |
| J | 현재 줄과 아래 줄을 연결 |
| ~ | 대문자를 소문자로, 소문자를 대문자로 바꿈 |
| % | 괄호의 반대쪽 짝으로 이동 |
| Ctrl + l | 현재 화면을 지우고 다시 그림 |
| Ctrl + g | 파일에 관한 정보를 표시 |
'OS > Linux' 카테고리의 다른 글
| RHEL6 OHS 필수 패키지 설치 (0) | 2026.04.03 |
|---|---|
| 사용자 계정 & 그룹 생성 (0) | 2023.10.06 |
| sed 명령어 (0) | 2023.09.12 |