티스토리 뷰

LINUX

[19] 리눅스 - vi 에디터

혀내 2022. 6. 27. 16:27
반응형

VI 에디터

리눅스 터미널 환경에서 사용되는 기본 텍스트 에디터이다.

$ vi                #(또는 vim)
$ vi 파일명

vi나 vim 명령어를 통해 vi 에디터를 사용할 수 있다.

vi 에디터는 명령모드로 시작되며, 입력받는 키에 따라 입력 모드, 마지막 줄 모드, 명령 모드로 변경할 수 있다.

마지막 줄 모드 명령어

wq
작업 내용을 저장하고 종료(==ZZ)
q
아무 작업 없이 종료
q!
작업 내용을 저장하지 않고 종료

내부 명령어

원하는 위치로 이동하는 명령어

  • 커서 이동하기
h, ←
한 칸 왼쪽으로 이동
j, ↓
한 칸 아래쪽으로 이동
k, ↑
한 칸 위쪽으로 이동
l, →
한 칸 오른쪽으로 이동
BACKSPACE
왼쪽으로 한 칸
SPACE
오른쪽으로 한 칸
-
이전 줄의 처음(명령모드)
+
다음 줄의 처음
RETURN
다음 줄의 처음
0
현재 줄의 맨 앞
$
현재 줄의 끝
^
현재 줄의 첫 글자
W
다음 단어의 첫 글자
B
이전 단어의 첫 글자

  • 화면 이동
^F
한 화면 아래로
^B
한 화면 위로
^D
반 화면 아래로
^U
반 화면 위로

 

  • 특정 줄로 이동
nG
n번째 줄로 이동
1G
첫 줄로 이동
G
마지막 줄로 이동
n
n번째 줄로 이동

  • 탐색
/탐색패턴
forward 탐색
?탐색패턴
backward 탐색

입력모드로 전환하는 명령

i
커서 위치 앞에 삽입
a
커서 위치 뒤에 삽입
I
현재 줄의 앞에 삽입
A
현재 줄의 뒤에 삽입
o
현재 줄의 아래에 전개
O
현재 줄의 위에 전개

 

수정/삭제 명령

  • 현재 커서를 중심으로 수정
r
한 글자만 변경
R
입력하는 대로 겹쳐 쓰기
s
현재 글자 삭제, 삽입 상태
C
커서로부터 줄 끝까지 변경
cc
현재 줄 전체 변경
cw
현재 단어를 삭제하고 변경

  • 삭제
x
커서가 있는 문자 지우기
X
커서의 왼쪽 문자 지우기
D
커서부터 줄끝까지 지우기
dd
현재 줄의 전체 지우기
n,m d
n~m번째 줄 지우기

  • 대치 명령 : 각 줄에서 패턴에 해당하는 첫 번째 단어만 대치한다.   ex) :1,$ s/and/AND/g
s/패턴/스트링
현재 줄에서 대치
n,m s/패턴/스트링
지정된 줄 범위에서 대치
n s/패턴/스트링
지정된 줄에서 대치
s/패턴/스트링/g
각 줄에서 해당하는 모든 단어 대치

 

  • 수행 취소/재수행
u
방금 전의 수행 취소
U
현재 줄의 수행 취소
.
방금 전의 수행 반복

  • 복사/붙이기
nY
현재 줄부터 n개의 줄 복사
n,m y
n~m번째 줄들을 버퍼에 복사
P(소문자)
복사(삭제)한 버퍼 내용을 커서 뒤(아래)에 삽입
P(대문자)
버퍼 내용을 앞(위)에 삽입

 

 

  • 다른 파일 편집
e 파일이름
현재 파일 대신 주어진 파일 열기
e! 파일이름
저장 여부 점검 없이 파일을 변경
e#
이전 파일 다시 열기

  • 줄 번호 붙이기/없애기
set number
줄 번호 붙이기
se
줄 번호 붙이기
set nonumber
줄 번호 없애기
se non
줄 번호 없애기

  • 편집기 내에서 쉘 명령어 수행
!ls
!cat

 

반응형