반응형
유닉스의 기본 편집기 VI 에디터를 계량한 버전이 VIM(빔) 에디터이며, 본질적으로 차이는 없음
VIM:Vi Iproved(향상된 VI)
VI는 최소한의 텍스트 편집 기능만 가지고 있으며, VIM을 문법 강조 등 기능이 추가된 버전
리눅스에는 VIM만 설치되어 있으며 VI를 실행하여도 VIM이 실행 됨.
저장 및 종료
명령어 | 설명 |
---|---|
:w | 저장 |
:w file.txt | file.txt 파일로 저장 |
:w >> file.txt | file.txt 파일에 덧붙여서 저장 |
:q | 종료 |
:q! | 강제 종료 |
:ZZ | 저장후 종료 |
:wq! | 강제 저장 후 종료 |
:e file.txt | file.txt 불러 옴 |
:e | 현재 파일을 불러 옴 |
:e# | 바로 이전에 열었던 파일을 불러 옴 |
입력 모드 전환
명령어 | 설명 |
---|---|
a | 커서 위치 다음칸부터 입력 |
A | 커서 행의 맨 마지막부터 입력 |
i | 커서의 위치에 입력 |
I | 커서 행의 맨 앞에서부터 입력 |
o | 커서의 다음행에 입력 |
O | 커서의 이전 행에 입력 |
s | 커서 이치의 한글자를 지우고 입력 |
cc | 커서 위치의 한 행을 지우고 입력 |
이동
명령어 | 설명 |
---|---|
h | 왼쪽으로 이동 |
l | 오른쪽으로 이동 |
j | 아래행으로 이동 |
k | 위 행으로 이동 |
w,W | 다음 단어의 첫 글자로 이동 |
b,B | 이전 단어의 첫 글자로 이동 |
^ | 그 행의 첫 글자로 이동 |
$ | 그 행의 마지막 글자로 이동 |
M | 커서를 화면 중앙으로 이동 |
z. | 현재 행을 화면의 중앙으로 이동 |
L | 커서를 화면 최하단으로 이동 |
z- | 현재 행을 화면의 중앙으로 이동 |
[n]H | 커서를 위에서 N행으로 이동 |
[n]L | 커서를 아래에서 n행으로 이동 |
ctrl+u | 반 화면 위로 스크롤 |
ctrl+d | 반 화면 아래로 스크롤 |
ctrl+b | 한 화면 위로 스크롤 |
ctrl+f | 한 화면 아래로 스크롤 |
gg | 문서의 맨 처음으로 이동 |
G | 문서의 맨 마지막으로 이동 |
[n]G,:[n] | n행으로 이동 |
삭제
명령어 | 설명 |
---|---|
x,dl | 커서 위치의 글자 삭제 |
X,dh | 커서 앞의 글자 삭제 |
diw | 현재 위치에 있는 단어 삭제 |
dd | 커서가 있는 행을 삭제 |
[n]dd | 현재 커서부터 아래 n번째 줄까지 삭제 |
dj | 현재 커서와 아래 줄 삭제 |
복사 & 붙여 넣기
명령어 | 설명 |
---|---|
yy,Y | 커서가 있는 한 행 복사 |
p | 현재 커서에 붙여 넣기, 행 복사일 경우 아래 줄에 붙여 넣음 |
[n]yy,[n]Y | 커서가 위치한 이후로 n행 복사 |
[n]p | n번만큼 붙여넣기 반복 |
블록 지정
명령어 | 설명 |
---|---|
v | 블록 지정 |
블록 지정중 명령 | |
y | 블록 복사하기 |
r | 치환 |
d | 지정 블록 지우기 |
U | 대문자로 바꾸기 |
u | 소문자로 바꾸기 |
~ | 대소문자 전환 |
J | 행 합침 |
: | 선택 영역에 대해서 ex명령 |
< | 행 앞에 탭 제거 |
> | 행 뒤에 탭 삽입 |
문자열 탐색 및 치환
명령어 | 설명 |
---|---|
:s/old/new | 현재 행의 처음 old를 new로 교체 |
:s/old/new/g | 현재 행의 모든 old를 new로 교체 |
10,20s/old/new/g | 10행부터 20행까지 모든 old를 new로 교체 |
[블록지정중]s/old/new/g | 지정 블록내 모든 old를 new로 교체 |
%s/old/new/g | 문서 전체에서 old를 new로 교체 |
%s/old/new/gc | 문서 전체에서 old를 new로 확인하며 교체 |
%g/pattern/s/old/new/gc | pattern이 있는 모든 행의 old를 new로 확인하며 교체 |
정규식 표현
명령어 | 설명 |
---|---|
^ | 행의 첫 문자([] 안에서는 not의미) |
$ | 행의 끝 |
. | 아무 문자나 한 문자 |
\ | |
[ ] | []사이의 문자 중 하나 |
\{min,max\} | min이상 amx이하 |
* | 앞의 내용이 0번 이상 반복됨 |
\+ | 앞의 내용이 1번 이상 반복됨 |
\< | 단어의 시작 |
\> | 단어의 끝 |
\n | 새 행 문자 |
\t | 탭 문자 |
#vi #vim #편집기 #명령어
반응형
'Dev > ETC' 카테고리의 다른 글
CentOS - Docker 디스크 사용량 증가 (0) | 2020.07.24 |
---|---|
IntelliJ Zoom 기능 활성화 (0) | 2020.03.09 |
Jenkins(Pipeline)를 이용한 DB 백업 (0) | 2020.02.17 |
도커 실행시 타임존 동기화 및 생성 파일 권한 (0) | 2020.02.06 |
CentOS 시스템 현황 명령어 (0) | 2020.02.03 |