본문 바로가기
SRE/Kubernetes, Docker, Linux

리눅스(Linux) vi 편집기 명령어.zip

by 멍뭉카 2024. 3. 4.
반응형

리눅스 OS는 자고로 기본 공통 소양이거늘 이제 알 때도 되었는데 vi 편집기 명령어들 항상 헷갈립니다. 제가 보려고 정리해 본 vi편집기 명령어 모음입니다

 

 

이젠 쫌 외우자 vi 편집기 명령어,,

 

모드 변경

일단 vi <파일명>으로 파일부터 열었다면 모드부터 바꿔 주셔야 합니다 지금이 명령행 모드인지 입력 모드인지 잘 생각하면서 사용해주시고, 마지막 나갈 때나 중간중간 라인편집 모드를 사용해주시게 되겠습니다

모드 내용
명령행 모드 ESC, 명령을 실행하는 모드
입력 모드 실질적인 문자 입력 상태
a, i, o, A, I, O 버튼을 통해 이동
라인 편집 모드
(마지막 행 모드)
ESC누른 후 : (콜론)을 입력하여 프롬프트에서 편집할 수 있도록 하는 모드 

 

커서 이동

윈도처럼 마우스 스크롤이 없기 때문에 커서 이동을 잘 숙지해봅니다 h, l, k, j로 이동해 줘야 조금 간지가 나고, 화면단위로 움직이는 것도 잘 알아 둡니다(동해 번쩍 서해 번쩍 하기 위해,,)

 

명령어 내용
←, h 왼쪽으로 커서 한 칸 이동
→, l 오른쪽으로 한 칸 이동
↑, k 윗쪽으로 커서 이동
↓, j 아래쪽으로 커서 이동
Ctrl + f 다음 화면으로 이동
Ctrl + b 전 화면으로 이동
Ctrl + d 하면의 반만 앞으로 이동
Ctrl + u 화면의 반만 뒤로 이동
G 커서를 텍스트의 마지막 라인으로 이동
M 커서를 화면 중간 라인으로 이동
nG n번째 줄로 이동
gg 제일 처음 줄로 이동

 

입력 모드 변경

실제 파일을 입력할 수 있는 모드로 변경하는 명령어입니다 i 나 a만 사용하고 있긴 하지만 실제로는 여러 개가 있습니다

명령어 내용
a 커서 뒤에 입력
i 커서 앞에 입력
o 커서 있는라인 밑에 입력
A 라인 끝에 입력
I 라인 시작 부분에 입력
O 커서가 있는 라인 위에 입력

 

삭제, 복사, 붙여 넣기

윈도처럼 우클릭이 된다거나 단순 del 키나 Ctrl+c, Ctrl+v가 vi에서는 다르게 적용됩니다 사용하다 보면 여기서 답답할 때가 자주 생기네요 잘 알아 둡니다

 

명령어 내용
yy 커서가 있는 라인을 복사
yw 커서가 있는 단어를 복사
yG 파일의 나머지 복사
yH 화면 시작까지 복사
p 삭제나 복사된 텍스르르 커서가 있는 문자나 라인 뒤에 삽입
P 삭제나 복사된 텍스르르 커서가 있는 문자나 라인 앞에 삽입
x 커서가 있는 문자 삭제
X 커서가 있는 문자 앞의 문자 삭제
dw 커서가 있는 단어 삭제
db 커서 앞에 있는 단어 삭제
dd 커서가 있는 라인 삭제
D 커서가 있는 라인의 나머지 삭제
dG 파일의 나머지 삭제
dH 화면의 시작까지 삭제
u 직전에 내린 명령 취소

 

바꾸기 명령

한 번에 바꾸는 명령어인데요 몇 개만 적어 봅니다, 이 부분까진 잘 사용하진 않지만 엔지니어분들 보면 사용할 일이 자주 있어 보입니다,,

 

명령어 내용
r 커서에 있는 문자 대치
R 입렫 코드로 한 문자씩 덮어씀
s 커서가 있는 문자 삭제 후 입력 모드로 전환
S 커서가 있는 줄을 삭젷나 후 입렫 모드로 전환

 

파일 종료, 검색, set

편집한 파일에 대한 저장 방법이나, 파일 내 검색 그리고 편집에 용이하도록 줄표시 등의 기능들을 라인 편집 모드에서 제공합니다 책에서는 라인 편집모드, 검색해 보면 마지막 행 모드(Last line mode) 등 이름이 좀 다르네요,, 수정한 파일을 저장이나 저장하지 않고 파일을 종료하기 위해 잘 알아 둡니다

 

명령어 내용
:w 파일 저장
:q vi 편집기 종료(저장되지 않음)
:q! vi편집기 강제 종료(저장되지 않음)
:wq 수정 내용 저장 후 종료
:wq! 강제 저알 후 종료
:숫자 해당 숫자 라인으로 커서 이동
/pattern 텍스트에서 앞으로 패턴 검색
?pattern 텍스트에서 뒤로 패턴 검색
n 앞 쪼는 뒤로 이전 검색 반복
N 반대 방향으로 이전 검색 반복
set nu
(set number)
줄 번호를 나타나게 함
set nonu
(set nonumber)
줄 번호 출력 취소

 

 

제가 정리하고 제가 찾아보기 위한 vi 명령어 정리본이었습니다,, 더 많이 있겠지만 많이 사용할 만 명령어 위주로 정리해 보았습니다

 

 

반응형

댓글