14 리눅스 vi 자주쓰는 유용한 단축키, 명령어 정리

|

views

[TOC]

리눅스에서 파일을 수정할 때,

vi {파일} 명령어 입력 후 사용할 수 있는 단축키 정리



0) 실제로 내가 제일 많이 쓰던 명령어

손에 익지 않아서 간단한 것들만 자주 쓰게 된다,,,

단축키 수행작업
shift + g (=window end 키) 커서 맨뒤로
gg (=window home키) 커서 맨앞으로
yy 복사(해당줄에 커서 후 yy)
p, P 붙여넣기(해당줄에 커서 후 p or P)
dd 줄 지우기(한 줄 삭제)
dw 단어 지우기
u 방금 수행 되돌리기
shift + u 해당 줄만 수행 되돌리기
shift + j 현재줄과 다음줄 연결

1) 유용한 단축키

- 삽입 기능 단축키 ( 명령모드 )

단축키 수행작업
i 커서 앞에 삽입
a 커서 뒤에 삽입
o 현재 줄 다음에 삽입
I 현재 줄 첫 칸 앞에 텍스트 입력
A 현재 줄 끝에 텍스트 입력
O 현재 줄 앞에 삽입


- 삭제 기능 단축키 ( 명령모드 )

단축키 삭제 대상 수행작업
x, #x 문자 커서 위치의 문자 삭제
dw, #dw 단어 커서 위치의 단어 삭제
dd, #dd 커서 위치의 줄 삭제
D(shift+d) 줄의 일부 커서 위치부터 줄 끝까지 삭제
u   방금 수행 명령 취소
U   해당 줄의 모든 편집 취소


- 복사 / 잘라내기 / 붙이기 기능 단축키 ( 명령모드 )

단축키 수행작업
yy, #yy 현재 행을 버퍼로 복사 (ex: 5yy - 현재 행부터 아래로 5줄을 버퍼에 저장)
p 현재 행 다음에 버퍼 내용 삽입
P 현재 행 위쪽에 버퍼 내용 삽입
dd, #dd 현재 행을 잘라내기

버퍼

  • vi는 작업 내용을 버퍼에 저장 - 실행 취소 가능
  • 복사하기, 잘라내기에 사용

사용 예

  • a3yy : 현재 행부터 아래로 3줄을 a 버퍼에 저장
  • ap : a 버퍼의 내용을 붙여넣기


- 검색 기능 단축키 ( 명령모드 )

단축키 수행작업
/문자 현재 위치부터 파일 앞쪽으로 문자열 탐색
?문자 현재 위치부터 파일 뒤쪽으로 문자열 탐색
n 다음 문자열 탐색
N 역방향으로 문자열 탐색

- 삽입 기능 단축키


- 기타

vi에서 쉘 명령어 실행

명령어 수행작업
:!명령 vi를 중단하고 지정한 명령 수행
  다시 vi로 돌아올 때 : enter
:sh vi를 잠시 빠져나가서 쉘을 수행
  다시 vi로 돌아올 때 : exit

알아두면 유용한 명령 키

명령어 수행작업
:f 파일명 파일 이름을 지정한 이름으로 변경
:w %.old 현재 파일을 .old 이름으로 저쟁해 둘 때
^g 기본적인 파일 정보 출력(파일명, 라인 수 등..)
J 현재 줄과 다음 줄 연결
. 바로 이전에 수행한 명령 재 실행
~ 현재 커서위치의 한 문자를 소문자 혹은 대문자로 전환


- vi 종료 단축키

저장 : 저장하거나 종료하려면 “명령모드”로 돌아와야 한다.

ex) 편집 후 ESC 키를 눌러 편집모드가 아닌 명령모드 상태로 아래의 명령어를 쳐야한다.

명령어 수행작업
:w 현재의 파일명, 상태로 파일 저장
:w 파일명 지정한 파일명, 상태로 파일 저장


종료 명령 : 저장 후 종료 또는 그냥 종료

명령키 수행작업
:q 작업 내용을 저장했으면 vi종료, 안했으면 종료 불가
:q! 작업 내용을 저장하지 않고 강제로 vi 종료
:wq 작업 내용을 저장한 후 vi 종료
:wq 파일명 작업 내용을 지정한 파일명으로 저장한 후 vi 종료
xx(shift+zz) 작업 내용을 저장한 후 vi 종료



2) 편집모드에서 커서 움직이기

  • 편집 모드에서 마우스로 커서를 움직일 수 없다.

  • 만약 마우스로 움직이고 싶다면, ESC키를 눌러 명령모드로 바꾼 뒤 커서를 움직여야 한다.

  • 화살표 혹은 h, j, k, l 키로 움직일 수 있다.

    views


지정한 곳으로 이동하기

단축키 수행작업
:n 또는 nG 줄 번호 n 위치로
:$ 또는 G 파일의 끝 줄로 이동
n+ n줄 만큼 앞으로 이동
n- n줄 만큼 뒤로 이동
( 현재 문장의 처음으로
) 다음 문장의 처음으로
{ 현재 문단의 처음으로
} 다음 문단의 처음으로