리눅스 문서 편집기 vi 열기
vi 초기화면vi example.txt -> example txt 파일 실행 (example.txt 파일이 없으면 빈 파일이 실행됩니다.) vi -> vi 편집기 실행 (빈파일)
vi를 시작할때는 파일을 지정할 수 있습니다. 지정한 파일이 존재하는 파일이면 해당 파일이 열리고 없는 파일이면 빈 파일이 열립니다. 빈파일을 열었을 경우에는 마지막 행 모드에서 파일명을 정할 수 있습니다.
vi 파일 저장 및 종료하기
모드 | 명령키 | 설명 |
마지막 행 모드 | :q | vi에서 작업한것이 없을때 vi 종료합니다. |
:q! | 작업한 내용을 저장하지 않고 종료합니다. | |
:w[파일명] | 작업한 내용을 저장만 한다. 파일명을 지정하면 새 파일로 저장합니다. | |
:wq. :wq! | 작업한 내용을 저장하고 vi를 종료합니다. | |
명령 모드 | ZZ (대문자) | 작업한 내용을 저장하고 vi를 종료합니다. |
내용을 편집한 후 vi를 종료하려면 명령모드나 마지막 행 모드에서 명령을 입력해야 합니다. 마지막 행 모드로 가려면 : 을 누르면 됩니다. 명령모드에서 파일의 저장과 종료를 동시에 수행하려면 대문자ZZ를 누르시면 파일을 저장한 후 vi를 바로 종료합니다.
vi 입력모드로 전환하기
명령키 | 설명 |
i | 현재 커서 앞에 입력합니다. |
a | 현재 커서 뒤에 입력합니다. |
o | 커서가 위치한 행의 다음 행에 입력합니다. |
I(대문자 i) | 커서가 위치한 행의 첫 컬럼으로 이동하여 입력합니다. |
A | 커서가 위치한 행의 마지막 컬럼으로 이동하여 입력합니다. |
O | 커서가 위치한 행의 이전 행에 입력합니다. |
vi 편집기에서 내용을 입력하려면 입력모드로 전환해야 합니다.
ESC 누를 시 다시 명령모드로 전환.
vi 커서 이동하기
명령키 | 설명 |
k | 커서를 위로 이동합니다. |
j | 커서를 아래로 이동합니다. |
h | 커서를 왼쪽으로 이동합니다. |
l | 커서를 오른쪽으로 이동합니다. |
^ / O | 커서를 현재 행의 처음으로 이동합니다. |
$ | 커서를 현재 행의 마지막으로 이동합니다. |
- | 커서를 한줄 위 처음으로 이동합니다. |
+ / Enter | 커서를 다음 행의 처음으로 이동합니다. |
H | 커서를 화면의 맨 윗행으로 이동합니다. |
M | 커서를 화면의 중간 행으로 이동합니다. |
L | 커서를 화면의 맨 아랫행으로 이동합니다. |
w | 커서를 다음 단어의 첫 글자로 이동합니다. |
b | 커서를 앞 단어의 첫 글자로 이동합니다. |
e | 커서를 다음 단어의 마지막 글자로 이동합니다. |
G | 파일의 마지막 행으로 커서를 이동합니다. |
행번호G | 지정한 행 번호로 커서를 이동합니다. |
:행번호 | 지정한 행 번호로 커서를 이동합니다. (마지막 행 모드) |
:$ | 파일의 마지막 행으로 커서를 이동합니다. (마지막 행 모드) |
vi에서는 마우스로 커서를 이동할 수 없고 오로지 키보드로만 커서를 이동할 수 있습니다.
vi 화면 이동하기
명령 키 | 설명 |
Ctrl + u | 화면의 절반 만큼 위로 이동합니다. |
Ctrl +ㅇ | 화면의 절반 만큼 아래로 이동합니다. |
Ctrl + b / Page Up | 한화면 위로 이동합니다. |
Ctrl + f / Page Down | 한화면 아래로 이동합니다. |
Ctrl + y | 화면을 한 행 위로 이동합니다. |
Ctrl + e | 화면을 한 행 아래로 이동합니다. |
파일의 크기가 터미널 화면의 크기보다 클 경우에는 화면을 이동하여야합니다.
vi 내용 수정하기
명령 키 | 설명 |
r | 커서가 위치한 글자를 다른 글자로 수정합니다. |
cw, [수정할 단어 수]cw | 커서위치에서부터 현재 단어의 끝까지 수정합니다. 숫자cw는 커서 위치로부터 지정한 숫자의 단어 만큼 수정합니다. |
s, [수정할 글자 수]s | 커서 위치로부터 ESC키를 입력할때까지 수정합니다. 숫자s는 커서 위치로부터 지정한 숫자만의 글자를 수정합니다. |
cc | 커서가 위치한 행의 내용을 모두 수정합니다. |
C | 커서 위치로부터 행의 끝까지 수정합니다. |
vi에서는 내용을 수정할 수 있는 다양한 명령어를 제공합니다.
vi 내용 삭제하기
명령 키 | 설명 |
x, [삭제할 글자 수]x | 커서가 위치한 글자를 삭제합니다. x앞에 삭제할 글자수를 지정할수도 있습니다. |
dw, [삭제할 단어 수]dw | 커서가 위치한 단어를 삭제합니다. dw앞에 삭제할 단어수를 지정할수도 있습니다. |
dd, [삭제할 행 수]dd | 커서가 위치한 행을 삭제합니다. dd앞에 삭제할 행의수를 지정할수도 있습니다. |
D | 커서 위치로부터 행의 끝까지 삭제합니다. |
vi에서는 내용을 삭제할 수 있는 다양한 명령어를 제공합니다.
vi 명령 취소하기
명령 키 | 설명 |
u | 명령을 취소합니다. |
U | 해당 행에서 한 모든 명령을 취소합니다. |
:e! | 마지막으로 저장한 내용 이후의 것을 모두 취소합니다. |
vi에서 명령을 잘못 입력한 경우 그 명령을 취소할수도 있습니다. 윈도우에서의 Ctrl +Z와 비슷한 기능이라고 생각하시면 됩니다.
vi 범위 지정하기
명령 키 | 설명 |
1, $, % | 1행부터 마지막 행까지 범위를 지정합니다. |
1,. | 1행부터 커서가 있는 행까지 지정합니다. |
.,$ | 커서가 있는 행부터 마지막 행까지 지정합니다. |
.,.+2 | 현재 행과 두번째 아랫행까지 지정합니다. |
10,20 | 10행부터 20행까지 지정합니다. |
윈도우에서는 마우스를 드래그하면 범위를 지정할 수 있지만 vi에서는 위의 명령키를 입력하여 범위를 지정하여야 합니다.
vi 내용 복사하기 / 잘라내기 / 붙이기
명령 키 | 설명 |
yy, [복사할 행 수]yy | 커서가 위치한 행을 복사합니다. yy앞에 복사할 행의 수를 지정할 수도 있습니다. |
dd, [잘라내기할 행 수]dd | 커서가 위치한 행을 잘라내기합니다. 삭제와 같은 명령어입니다. dd앞에 잘라내기할 행 숫자를 입력할 수도 있습니다. |
p | 커서가 위치한 행의 아래쪽에 붙여넣기를 합니다. |
P | 커서가 위치한 행의 위쪽에 붙여넣기를 합니다. |
vi에서도 일반적인 편집기처럼 내용을 복사하거나 잘라붙이기도 가능합니다.
vi 내용 검색하기
명령 키 | 설명 |
/문자열 | 문자열을 커서 아래 방향으로 검색합니다. |
?문자열 | 문자열을 커서 위 방향으로 검색합니다. |
n | 원래 방향으로 다음 문자열을 검색합니다. |
N | 반대 방향으로 다음 문자열을 검색합니다. |
윈도우에서 Ctrl+F를 하여 문자열을 검색하듯 vi에서도 문자열을 검색할 수 있습니다.
vi 내용 치환하기
명령 키 | 설명 |
:s/[대상문자열]/[바꿀문자열] | 커서가 위치한 행에서 첫번째로 나오는 대상문자열을 바꿀문자열로 바꿉니다. |
:%s[대상문자열]/[바꿀문자열] | 파일 전체에서 모든 대상문자열을 바꿀문자열로 바꿉니다. |
:[범위]s[대상문자열]/[바꿀문자열] | 범위 내 모든 각 행에서 첫번쨰로 나오는 대상문자열을 바꿀문자열로 바꿉니다. |
:[범위]s[대상문자열]/[바꿀문자열]g | 범위 내 모든 행에서 대상문자열을 바꿀문자열로 바꿉니다. |
:[범위]s[대상문자열]/[바꿀문자열]gc | 범위 내 모든 행에서 대상문자열을 바꿀문자열로 바꾸되 수정할 지 여부를 묻습니다. |
문자열을 바꿀 수도 있습니다. 다만 문자열을 바꿀때에는 마지막 행모드로 전환을 해야만 사용이 가능합니다. 명령어 앞의 : 는 마지막 행모드로 전환하는 명령키입니다.
출처:
'Operating System > Linux' 카테고리의 다른 글
[Linux] Cron, Crontab이란? batch 등록하기 (0) | 2020.11.02 |
---|---|
VMware에 CentOS-8 64bit 설치하기 (0) | 2020.11.02 |
Linux 명령어 vs 윈도우 명령어 비교 (0) | 2020.09.15 |
리눅스(Linux) 기초 이론 (OS,쉘,터미널,커널) (0) | 2020.07.27 |
개발자(프로그래머)가 리눅스(Linux) 배워야하는 이유 (0) | 2020.07.27 |
댓글