가끔 개발자들이 아래와 같은 화면을 띄워 놓은 것을 볼 수 있을 것이다.
일반적으로 이런 검은 화면에서 문서를 보려면 리눅스에서 파일을 보는 상황일 것이다. 익숙하지 않은 vi 에서 알고 있으면 편하게 사용할 수 있는 명령어에 대해 간단하게 정리를 해보겠다.
vi란?
쉽게 말해서 파일을 편집하기 위한 에디터라고 생각하면 된다. 윈도우에서는 파일을 작성하거나 수정하기 위해 메모장을 사용하지만, 리눅스에서는 기본 편집기로 vi를 사용한다. 처음에는 낯설기 때문에 어색하지만 익숙하지고 명령어를 익히면 편하게 사용이 가능하다.
vi 파일 실행
아래와 같이 터니널에서 명령어를 치면 지정한 파일이 있는 경우 파일이 열리고, 없는 파일이면 빈 파일이 열린다.
vi test.txt
vi 파일 저장 및 종료
vi 파일을 저장하거나 종료 하려며 명령모드에서 입력을 해야 한다. :를 입력하면 명령모드로 전환된다. 입력모드에서는 esc 를 누르고 :를 입력하면 된다.
명령어 | 설명 |
:q | vi에서 작업한 것이 없는 경우 종료 |
:q! | 작업한 내용을 저장하지 않고 강제 종료 |
:w | 작업한 내용을 저장 |
:w[파일명] | 파일명 지정 시 새파일로 저장 |
:wq | 작업한 내용을 저장하고 종료 |
:wq! | 작업한 내용을 저장하고 강제종료 |
vi 입력모드
명령어 | 설명 |
i | 현재 커서 앞으로 입력모드 전환 |
a | 현재 커서 뒤로 입력모드 전환 |
o | 현재 커서 위치한 다음 행으로 입력모드 전환 |
I (대문자) | 커서 위치한 행의 첫 컬럼으로 이동하여 전환 |
A (대문자) | 커서 위치한 행의 마지막 컴럼으로 이동하여 전환 |
O (대문자) | 커서 위치한 행의 이전 행에 입력 |
참고로 입력모드를 종료하려면 esc를 누르면 된다.
vi를 처음 사용하다 보면 마우스를 사용하지 못해 처음에는 익숙하지 않아 불편하게 느끼게 된다. 아래 조작 단축키를 잘 기억해 놓으면 문서 편집 시 용이하다.
vi 조작
명령어 | 설명 |
k | 커서 위로 이동 |
j | 커서 아래로 이동 |
h | 커서 왼쪽으로 이동 |
l | 커서 오른쪽으로 이동 |
^ or 0(숫자) | 커서를 현재 행의 처음으로 이동 |
$ | 커서를 현재 행의 마지막으로 이동 |
- | 커서를 한줄 위 처음으로 이동 |
+ or Enter(key) | 커서를 다음 행의 처음으로 이동 |
w | 커서를 다음 단어의 첫 글자로 이동 |
b | 커서를 앞 단어의 첫 글자로 이동 |
e | 커서를 다음 단어의 마지막 글자로 이동 |
H | 커서를 화면의 맨 윗행으로 이동 |
M | 커서를 화면의 중간행으로 이동 |
L | 커서를 회면의 맨 아래행으로 이동 |
G | 파일의 마지막행으로 커서를 이동 |
행번호 G | 지정한 행 번호로 커서를 이동 |
:행번호 | 지정한 행 번호로 커서를 이동 |
:$ | 파일의 마지막 행으로 커서를 이동 |
vi 내용 삭제
명령어 | 설명 |
x, [삭제글자 수]x | 커서가 위치한 글자 삭제 |
dw, [삭제할 단어수]dw | 커서가 위치한 단어를 삭제 |
dd, [삭제할 행 수]dd | 커서가 위치한 행 삭제 |
D | 커서 위치로부터 행의 끝까지 삭제 |
기본적인 vi 사용법을 알아봤다. vi 가 사용법이 어렵다기 보다 익숙하지 않아서 어렵게 느껴지는 것이니 익숙해 지면 쉽게 사용가능하다. 리눅스에 mysql을 설치하거나 무엇인가 설정을 하는 경우 사용할 수 있으니 back-end 개발자가 될 예정이라면 알고 있으면 좋다.
반응형
'Develop Basic' 카테고리의 다른 글
홈브류 Homebrew 는 무엇인가? (+기본 명령어) (0) | 2021.06.02 |
---|---|
홈브류 에러 해결! Error: homebrew-core is a shallow clone. (0) | 2021.05.27 |
Error: Unknown command: cask | java, mysql 설치 시 발생 에러 (0) | 2021.05.26 |
vi 문자열 찾기 및 문자열 바꾸기 총정리 (0) | 2021.05.25 |
SSH 기초 개념정리 (0) | 2021.05.13 |
댓글