삽입 명령
a
커서 뒤에 입력
A
라인 끝에 입력
i
커서 앞에 입력
I
라인시작 부분에 입력
o
커서 있는 라인 밑에 입력
O
커서가 있는 라인 위에 입력
커서 이동 명령
h
왼쪽으로 커서 한 칸 이동
H
화면의 처음으로 이동
L
오른쪽으로 한 칸 이동
L
화면 끝으로 이동
e
다음 단어의 마지막으로 이동
E
커서를 공백으로 구분된 다음 단어 끝으로 이동
b
한 단어 뒤로 이동
B
커서를 공백으로 구분된 이전 단어로 이동
w
커서를 한 단어 뒤로 이동
W
커서를 공백으로 구분된 다음 단어로 이동
k
커서를 한 라인 위로 이동
j
커서를 한 라인 아래로 이동
O
커서를 라인의 시작으로 이동
$
커서를 라인의 끝으로 이동
Enter
커서를 다음 라인 시작으로 이동
-
커서를 전 라인의 시작으로 이동
Ctrl + F
다음 화면으로 이동
Ctrl + D
화면의 반만 앞으로 이동
Ctrl + B
전 화면으로 이동
Ctrl + U
화면의 반만 뒤로 이동
G
커서를 텍스트 마지막 라인으로 이동
숫자G
커서를 숫자 라인만큼 이동
M
커서를 화면 중간 라인으로 이동
“
커서를 전 위치로 이동
(
문장의 시작으로 이동
{
문단의 시작으로 이동
)
문장 끝으로 이동하여 다음 단어의 시작으로 커서 이동
}
문단 끝으로 이동
삭제 명령
x
커서가 있는 문자 삭제
X
커서가 있는 문자 앞에 있는 문자 삭제
dw
커서가 있는 단어 삭제
db
커서가 앞에 있는 단어 삭제
dW
공백으로 구분된 뒷 단어 삭제
dB
공백으로 구분된 앞 단어 삭제
dd
커서가 있는 라인 삭제
D
커서가 있는 라인의 나머지 삭제
d)
문장의 나머지 삭제
d}
문단의 나머지 삭제
dG
파일의 나머지 삭제
dH
화면의 시작까지 삭제
dL
화면의 나머지 삭제
J
커서와 다음 단어의 공백을 모두 삭제
바꾸기 명령
r
커서에 있는 문자 대치
R
입력 모드로 한 문자씩 덮어씀
s
커서가 있는 문자 삭제 후 입력 모드로 전환
S
커서가 있는 줄을 삭제 후 입력 모드로 전환
cb
커서가 있는 앞 문자 삭제 후 입력 모드
cW
공백으로 구분된 뒷 단어를 삭제 후에 입력 모드
cB
공백으로 구분된 앞 단어 삭제 후 입력 모드
cc
커서가 있는 라인을 삭제하고 입력 모드
C
커서가 있는 라인의 나머지를 삭제하고 입력 모드로 전환
cO
커서에서부터 라인의 시작까지 텍스트 바꾸기
c
특정 텍스트 바꾸기
c)
문장의 나머지 바꾸기
c}
문단의 나머지 바꾸기
cG
파일의 나머지 바꾸기
cm
표시까지 모든 것 바꾸기
cL
화면의 나머지 바꾸기
ch
화면의 시작까지 바꾸기
이동
p
삭제나 복사된 텍스트를 커서가 있는 문자나 라인 뒤에 삽입
P
삭제나 복사된 텍스트를 커서가 잇는 문자나 라인 앞에 삽입
dw p
커서가 있는 단어를 삭제한 후 이를변경한 커서가 있는 것 뒤에 삽입
dw P
커서가 잇는 단어를 삭제 후 이를 변경한 커서 있는 곳 앞으로 삽입
d p
지정한 다음 텍스트로 삭제한 후 커서가 가리키는 곳으로 이동
d) P
문장의 나머지로 이동
d} p
문단의 나머지로 이동
dG P
파일의 나머지로 이동
dH p
회면 시작 부분으로 이동
dL P
화면의 나머지를 이동
복사
yw
커서가 있는 단어를 복사
yb
커서가 있는 앞 단어를 복사
yW
공백으로 구분된 뒷 단어 복사
yB
공백으로 구분된 앞 단어를 복사
y
특정한 다음 텍스트 복사
yy
커서가 있는 라인을 복사, 커서가 가리키는 곳으로 라인을 이동
y)
문자의 나머지 복사
y}
문단의 나머지 복사
yG
파일의 나머지 복사
yH
화면의 시작까지 복사
yL
화면의 나머지 복사
검색
/patter
n
텍스트에서 앞으로 패턴 검색
>patter
텍스트에서 뒤로 패턴 검색
n
앞 또는 뒤로 이전 검색 반복
N
반대 방향으로 이전 검색 반복
/
전 검색을 앞으로 반복
?
전 검색을 뒤로 반복
vi 에디터 종료 마치기 명령
n
:q
그대로 종료하기
:q!
변경된 내용을 저장하지 않고 강제로 종료하기
:wq
변경된 내용을 저장하고 종료하기
:x
:wq와 동일한 명령
ZZ
:wq와 동일한 명령
삽입 명령
a
커서 뒤에 입력
A
라인 끝에 입력
I
커서 앞에 입력
I
라인시작 부분에 입력
o
커서 있는 라인 밑에 입력
O
커서가 있는 라인 위에 입력
방향키를 이용한 커서 이동 명령
<-, Del
왼쪽으로 커서 한 칸 이동
PageUp
화면 위로 이동
->
SpaceBar
오른쪽으로 한 칸 이동
PageDown
화면 아래로 이동
↑
윗 줄로 커서 이동
Enter
다음 줄 첫 칸으로 이동
↓
아래 줄로 커서 이동
Esc
다음 줄 첫 칸으로 이동
Home
줄 처음 칸으로 이동
다른 키를 이용한 커서 이동 명령
H
왼쪽으로 커서 한 칸 이동
k
윗 쪽으로 커서 이동
l
오른쪽으로 한 칸 이동
j
아래쪽으로 커서 이동
e
다음 단어의 마지막 칸으로 이동
E
공백으로 구분된 뒷 단어의 마지막 칸으로 이동
b
앞 단어의 앞 칸으로 이동
B
공백으로 구분된 앞 단어의 앞 칸으로 이동
W
다음 단어의 앞 칸으로 이동
W
공백으로 구분된 뒷 단어의 앞 칸으로 이동
그 외의 키를 이용한 커서 이동 명령
Ctrl + F
다음 화면으로 이동
Ctrl + D
반 화면 위로 이동
Ctrl + B
전(앞) 화면으로 이동
Ctrl + L
반 화면 아래로 이동
O
줄이 시작되는 첫 칸으로 이동
-
이전 줄의 시작 부분으로 이동
$
줄이 끝나는 마지막 칸으로 이동
+
다음 줄의 시작 부분으로 이동
(
문장의 시작으로 이동
{
문단의 시작으로 이동
)
문장의 끝으로 이동하여 다음 단어의 시작 첫 칸으로 커서 이동
}
문단의 끝으로 이동
G
문서의 마지막 줄로 이동
“
이전의 커서 위로 이동
nG
n번째 줄로 이동
M
화면 중간 줄에 커서 이동
삭제 명령
x
커서가 있는 문자 삭제
X
커서가 있는 문자 앞에 있는 문자 삭제
dw
커서가 있는 단어 삭제
db
커서 앞에 있는 단어 삭제
dW
공백으로 구분된 뒷 단어 삭제
dB
공백을 구분된 앞 단어 삭제
dd
커서가 있는 라인 삭제
D
커서가 있는 라인의 나머지 삭제
d)
문장의 나머지 삭제
d}
문단의 나머지 삭제
dG
파일의 나머지 삭제
dH
화면의 시작까지 삭제
dL
화면의 나머지 삭제
J
커서와 다음 단어 사이의 모든 공백 삭제
바꾸기 명령
R
커서에 잇는 문자 대치
R
입력 모드로 한 문자식 덮어 씀
s
커서가 있는 문자 삭제 후 입력 모드로 전환
D
커서가 있는 줄을 삭제한 후 입력 모드로 전환
cb
커서가 있는 앞 문자 삭제 후 입력 모드
cW
공백으로 구분된 뒷 단어를 삭제한 후 입력 모드
cB
공백으로 구분된 앞 단어 삭제 후 입력 모드
cc
커서가 있는 라인을 삭제하고 입력 모드
C
커서가 있는 라인의 나머지를 삭제하고 입력 모드로 전환
cO
커서에서부터 라인의 시작까지 텍스트 바꾸기
c
특정 텍스트 바꾸기
c)
문장의 나머지 바꾸기
c}
문단의 나머지 바꾸기
cG
파일의 나머지 바꾸기
cH
화면의 시작까지 바꾸기
cL
화면의 나머지 바꾸기
텍스트 이동
p
삭제나 복사된 텍스트를 커서가 있는 문자나 라인 뒤에 삽입
P
삭제나 복사된 텍스트를 커서가 있는 문자나 라인 앞에 삽입
dw p
커서가 있는 단어를 삭제한 후 이를 원하는 곳 커서 뒤로 삽입
dw P
커서가 있는 단어를 삭제한 후 이를 변경한 커서가 있는 곳으로 삽입
d p
지정한 다음 텍스트로 삭제한 후 커서가 가리키는 곳으로 이동
d) P
문장의 나머지로 이동
d} p
문단의 나머지로 이동
dG P
파일의 나머지로 이동
dH P
화면 시작 부분으로 이동
dL P
화면의 나머지를 이동
복사
yw
커서가 있는 단어를 복사
yb
커서가 잇는 앞 단어를 복사
yW
공백으로 구분된 뒷 단어 복사
yB
공백으로 구분된 앞 단어를 복사
y
특정한 다음 텍스트 복사
yy
커서가 있는 라인을 복사, 커서가 가리키는 곳으로 라인을 이동
y)
문자의 나머지 복사
y}
문단의 나머지 복사
yG
파일의 나머지 복사
yH
화면 시작까지 복사
yL
화면의 나머지 복사
검색
/pattern
텍스트에서 앞으로 패턴 검색
>pattern
텍스트에서 뒤로 패턴 검색
n
앞 또는 뒤로 이전 검색 반복
N
반대 방향으로 이전 검색 반복
/
전 검색을 앞으로 반복
?
전 검색을 뒤로 반복
옵션
옵션약어
기능
디폴트
autoindent
ai
들여 쓰기 가능, 탭으로 들여 쓰기 범위 지정
off
autoprint
ap
줄이 바뀔 때 현재 줄을 화면상에서 출력
on
errobells
ed
명령 에러가 발생시 삑 소리나게 함
off
number
nu
줄 번호를 나타나게 함
off
report
report
편집시 메시지를 보낼 편집 변화 크기 지정
5
showmatch
sm
가로 닫기 괄호를 사용할 때 일치하는 가로 열기 괄호를 보여줌
off
wam
wam
저장하지 않고 vi 종료할 때 경고 메시지를 뿌려 줌
on
ignorecase
ic
검색 패턴에 사용되는 대소문자 구별하지 않음
on
tabstopp=n
ts=n
탭 공백을 n 수만큼 지정
8
wrapmargin=n
wm=n
텍스트 오른쪽 여백을 n 수만큼 지정
0
vi 에디터 (출처:http://compedu.inue.ac.kr/%7Echlee56/wowlinux/vi.htm)
vi 기초
여러개 파일을 동시에 열고 싶을 때,
$ vi *.html (.html파일을 모두 연다)
:n은 다음문서, :N은 이전문서로 간다.
다음, 파일을 저장하거나 닫고 싶거나 다른 파일을 편집하고 싶을 때,
(먼저 ESC를 눌러서 명령을 내릴 수 있는 상태로 변환해야 합니다.)
명령
설 명
ZZ or :wq
저장하고 vi 끝내기
:w [파일이름]
주어진 파일이름으로 파일 저장하기
:w! [파일이름]
주어진 파일이름으로 저장/덮어쓰기
:q!
편집한 내용을 저장하지 않고 vi 끝내기
:e!
편집한 내용을 저장하지 않고 최종 저장된 상태로 파일 열기
:w 새파일이름
현재 작업중인 파일을 새파일이름으로 저장하기
:e 열고_싶은_파일이름
vi를 끝내지 않고 다른 파일 편집하기
vi의 세가지 모드
vi에는 세가지 모드가 있습니다. Command, Insert, ex 모드랍니다.
모 드
전환키
설 명
Command Mode
ESC
문서내의 텍스트를 지우거나, 복사하거나, 추가하거나, 삽입하거나, 옮기거나 할 수 있는 명령을 사용할 수 있는 모드입니다.
Insert Mode
i,a,o,O, ...
문서에 텍스트를 추가하거나, 삭제하거나, 복사할 수 있는 모드입니다.
ex Mode
:
맨 아래 라인에 확장된 명령어를 입력할 수 있도록 해줍니다.
파일 안에서 커서 움직이기
한칸씩 이동하는 것은 화살표키로도 가능하지만, vi명령을 사용할 경우 '3h'와 같이 사용하여, '오른쪽으로 3칸이동'과 같은 명령을 수행할 수 있다.
입력 키
기 능
입력 키
기 능
h
오른쪽으로 한 칸
b
한 단어 뒤로 이동
j
아래로 한 칸
B
특수문자/기호들은 단어로 치지 않고, 한 단어 뒤로 이동
k
위로 한 칸
w
한 단어 앞으로 이동
l
왼쪽으로 한 칸
W
특수문자/기호들은 단어로 치지 않고, 한 단어 앞으로 이동
0
라인의 시작으로 이동
:0
문서의 맨 앞으로
$
라인의 끝으로 이동
:$
문서의 맨 뒤로
^
라인의 첫 번째 단어로 이동
텍스트를 편집하기 위한 명령
입력 키
기 능
입력 키
기 능
i
insert, 현재 문자 앞에서부터 입력
cw
한단어 change
a
append, 현재 문자 뒤부터 입력
x
한문자 delete
o
현재 줄 아래 한 줄 삽입
O : 현재 줄 위에 한 줄 삽입
y
yank(copy) text, 문자 복사
yw : 단어 복사
yy : 한줄 복사
3yy : 세줄 복사
r
replace
p
put(paste) 현재 줄 다음 줄에 버퍼의 내용을 붙인다.
R
현재 문자 이후부터 replace
P
현재 줄 앞에 버퍼의 내용을 붙인다.
dw
delete word
u
마지막 명령을 Undo
U : 그줄에서 수행한 명령들을 Undo
dd
delete line
J
join, 두 줄을 연결한다.
vi에서는 정규표현식을 사용하여 여러 가지 작업을 효율적으로 처리할 수 있습니다.
예를들어, 다음 명령으로 정해진 패턴을 삭제하거나, 바꿀 수 있습니다.
:s/old/new/g
--> old를 찾아 new로 바꾸어 준다.
:10,50s/old/new/g
--> 10~50Line 사이에 있는 old를 찾아 new로 바꾸어 준다.
:1,$s/old/new/g
:%s/old/new/g
--> 현재 문서의 처음부터 끝까지 old를 찾아 new로 바꾸어 준다.
:1,$s/old/new/gc
--> c옵션에의해 바꾸기 전에 항상 물어본다.
환경설정 set 명령
set 명령은 vi의 각종 환경을 설정하는데 사용됩니다.
set 명령의 환경 변수 설정은 세가지 타입이 있습니다.
Boolean(on|off), Numeric, String
어떤 환경변수가 있는지는 다음 명령으로 확인해 보세요.
:set all
vi 환경 설정하기
~/.exrc
vi는 실행될 때마다, 위의 파일을 읽는다.
이 파일은 자신의 홈디렉토리 안에 만들어 주면 되고,
기본적으로 Tab size, Line Number 출력 여부, 자동 들여쓰기 여부,
좌표 출력 여부등의 여러 가지 설정을 자신의 취향에 맞게 할 수 있습니다.
set autoindent
set number
'IT' 카테고리의 다른 글
AI 정치관상 테스트 (진보 vs 보수) (0) | 2022.02.14 |
---|---|
카카오톡 공유하기 (kakao share) (0) | 2022.02.12 |
딥페이크 앱 20선 소개 ( DeepFake app ) (4) | 2022.02.11 |
반응형 웹 간단정리 (0) | 2022.02.10 |
소셜미디어의 장점과 단점 (0) | 2019.11.19 |