Web
[ vi Command ] vi 명령어 정리 모음
핏짜보이
2022. 10. 25. 21:44
반응형
1. vi 편집기의 전체적인 구조
1) 명령 모드 ( command mode) - 처음 vi 명령어로 시작하게 되면 들어갑니다.
여기서는 방향키로 커서 이동이 가능하며, 'dd', 'yy'로 한줄 삭제 / 한줄 붙여넣기 또는 'x' 명령어로 글자하나를 삭제할 수 있습니다.
2) 입력 모드 (insert mode) - 명령모드에서 'i'나 'a' 명령을 통해서 입력모드로 넘어갈 수 있습니다.
입력모드로 들어가면, 자유롭게 코드나 글을 작성할 수 있습니다. 다시 명령모드로 돌아오려면 'ESC'를 누르면 됩니다.
3) 마지막 행 모드 (last line mode) - 마지막 행모드는 명령모드에서 ':'(콜론)을 입력하면 화면 맨 아래에
:_______ 하며 입력을 할 수 있는 공간이 나옵니다.
여기서 현재까지 내가 작성한 이 내용을 저장하고 vi를 종료(wq)할지, 저장하지 않고 종료(q, q!)할지 등을 입력할 수 있습니다.
2. vi 명령어
2-1. 명령모드에서의 명령어
vi 명령어 | 동작 |
i | 현재 커서 위치에 삽입 - 입력모드로 넘어감 |
a | 현재 커서 바로 다음 위치에 삽입 - 입력모드로 넘어감 |
o | 현재 줄 다음 위치에 삽입 //영문 o(오) - 입력모드로 넘어감 |
x | 커서가 위치한 곳의 글자 1개 삭제 Ex) 3x - 문자 3개 삭제 |
dw | 커서가 위치한 곳에서부터 단어 삭제 커서가 위치한 곳부터 띄어쓰기까지 |
dd | 커서가 위치한 곳의 한 줄 삭제 삭제이지만, p로 복구가능 |
u | 방금 한 명령 취소 = ctrl + z (실행취소 기능) |
yy | 현재 줄을 버퍼로 복사 한줄을 ctrl + c 기능! ex) 2줄 복사 - 2yy |
p | 현재 커서가 있는 줄 바로 아래에 버퍼 내용 붙여넣기 복사한 줄을 ctrl + v 기능! ex)2dd로 2줄을 지운 내용도 p 로 붙여넣기 가능! (잘라내기 : dd // 붙여넣기 : p) |
(N)dd | 삭제되는 것 처럼 보이지만 실제로는 잘라내기의 기능! = ctrl + x vi에서 3줄을 삭제하고 싶다면 3dd의 방식으로 사용가능! |
0 | 커서가 있는 줄의 맨 앞으로 이동 // 숫자 0(영)!!! |
$ | 커서가 있는 줄의 맨 뒤로 이동 |
( | 현재 문장의 처음 |
) | 현재 문장의 끝 |
{ | 현재 문단의 처음 |
} | 현재 문단의 끝 |
G | 파일의 끝으로 이동 대문자로 사용해야 함!!! |
r | 한 문자 변경 |
cc | 커서가 있는 해당 줄의 내용 변경 |
숫자+ | 숫자만큼 아랫 줄로 이동 |
숫자- | 숫자만큼 윗 줄로 이동 |
2-2. 마지막 행 모드에서의 명령어
vi 명령어 | 동작 |
w | 현재 파일명으로 파일 저장 (저장까지 하고 꺼지지는 않음!) |
w [file name] | 입력한 파일명으로 파일 저장 (저장까지 하고 꺼지지는 않음!) |
q | vi 종료(저장되지 않음) |
q! | vi 강제 종료 (저장되지 않음 / ! 사용하면 강제 수행) |
wq | 저장 후 종료 |
wq! | 강제 저장후 종료(! 사용하면 강제 수행) |
f [file name] | 파일 이름을 [파일명]으로 변경 ex) f example.txt => example.txt |
숫자 | 해당 라인으로 커서 이동 |
$ | 파일의 맨 끝 줄로 이동 |
e! | 마지막 저장 이후 모든 편집 취소 |
/문자열 | 현재 커서 위치에서부터 파일 암쪽으로 문자열 탐색 |
?문자열 | 현재 커서 위치에서부터 파일 뒤쪽으로 문자열 탐색 |
set nu | vi 라인 번호 출력 |
set nonu | vi 라인 번호 출력 취소 |
728x90