Linux

[Linux] vi 관련 명령어

썽연 2021. 8. 4. 10:17
728x90

리눅스 터미널 환경에서

 

vi (파일명.txt)

vim

으로 편집기를 시작하면

 

메모장 같은 빈 화면이 나온다.

 

[입력 모드 전환]

-- 현 커서 앞에(현 커서 자리에) 끼워넣기

-- 현재 커서 뒤에 끼워넣기

-- 다음 행에 끼워넣기

shift + a -- 현재 행의 맨 마지막 자리에 끼워넣기

shift + i -- 현재 행의 첫 번째 칼럼에 끼워넣기

shift + o -- 현재 커서가 위치한 행의 이전행에 입력

 

입력 모드에서 esc키를 누를 시 명령 모드로 전환

 

:q --작업한 내용이 없을 때 그냥 종료

:q! -- 저장하지 않고 종료

:wq,     :wq!--저장하고 종료

 

:w test.txt -- 파일 이름이 없을 시 test.txt라는 파일 이름으로 저장

 

shift + zz -- 저장하고 종료 (콜론 없음!)

 

ls -- 파일 확인

ls-l -- 파일 확인 리스트 형식(시간도 나옴)

 

cat [파일명. txt]-- 터미널에서 파일명 내용 확인

 

 

:set number

:set nu-- 행 수 표시 

 

 

[커서 이동 (명령 모드에서 실행)]

--왼쪽 이동

--아래 이동

--위 이동

--오른쪽 이동

 

-커서를 명령모드에서 현재 행의 맨 마지막으로 이동

^,    0 -커서를 명령모드에서 현재 행의 맨 처음으로 이동

 

H --커서를 현재 화면에서 맨 위로 이동

L -- 커서를 현재 화면에서 맨 아래로 이동

M --커서를 현재 화면의 중간으로 이동

 

gg --현재 문서의 가장 처음으로 이동

shift + G --문서에서 가장 끝으로 이동

(숫자) G (ex) 1G, 3G, 10G) -- 행 번호로 이동

:n --n행으로 이동

:$ -- 문서의 마지막행으로 이동

 

w -- 다음 단어의 첫 글자로 이동

b -- 앞단어의 첫글자로 이동

e --다음 단어의 마지막 글자로 이동

 

 

[수정]

r -- 커서가 위치한 문자를 다른 문자로 수정(한문자)

cw -- 커서의 위치부터 현재 단어 끝까지 수정

(숫자)cw -- 커서의 위치부터 주어진 숫자만큼의 단어 수정

s -- 커서의 위치부터 계속 수정(esc키를 누르기전까지)

(숫자)s -- 숫자만큼의 자리(문자를) 수정

cc -- 커서가 위치한 행의 내용 모두 수정

shift + c --커서가 위치한 자리부터 행 맨끝까지 지움

 

[화면이동]

ctrl + f -- 다음 페이지(foward) pageDown

ctrl + b -- 이전 페이지(backward) pageUp

 

[삭제]

x -- 커서가 위치한 문자 삭제

(숫자)x -- 주어진 숫자만큼의 문자 삭제

dw -- 커서가 위치한 단어 삭제

(숫자)dw -- 주어진 숫자만큼의 단어 삭제

dd -- 커서가 위치한 행을 삭제

(숫자)dd -- 주어진 숫자만큼의 행 삭제

 

u -- 이전 명령 취소

shift + u --해당 행에서 사용한 모든 명령 취소

shift + d -- 현재 커서위치에서 행의 끝까지 지운다

:e! -- 마지막 저장한 내용 이후의 것을 버리고 새로 작업

 

[복사 / 붙이기 / 잘라내기]

yy -- 커서가 위치한 행을 복사

p -- 커서가 위치한 행의 바로아래에 복사 

shift + p -- 커서가 위치한 행의 위쪽에 복사

(숫자)yy -- 숫자만큼의 행을 복사

dd -- 커서가 위치한 행을 잘라내기 (행 삭제할때도 사용)

 

[버퍼를 이용한 복사 / 붙여넣기]

"(문자 or 숫자)yy  -- 해당 문자or숫자 버퍼에 해당 행 내용을 저장하여 복사

 

[범위 지정하기(범위 지정은 마지막 행모드에서 가능)]

%, $ --마지막 행 의미

. -- 현재커서 위치

 

:/단어 - / 뒤에 쓴 단어를 찾는다 n으로 다음 단어 찾기

:s/버퍼/buffer - 현재 위치한 행에서 버퍼라는단어를 buffer 로 바꾸겠다

 

:sh -- 터미널로 돌아가고싶을 시 

exit -- 터미널로 나가서, 현재 편집모드로 돌아가기

 

 

728x90