리눅스 vi 편집기 사용법 (기초 명령어와 저장, 종료 방법)
지난 시간에는 리눅스에서 자주 사용하는 기본 명령어들에 대해 간단히 알아보았다.
사실 기본 명령어 외에도 tail, cat 같은 자주 쓰는 명령어들이 더 있지만, 이런 것들은 실제로 필요해지는 시점에 맞춰 따로 다루는 편이 더 좋을 것 같아 이번 글에서는 넘어가도록 하겠다. 특히 tail 명령어는 로그 파일을 확인할 때 자주 사용되는데, 나중에 리눅스에 서버를 설치하고 로그를 살펴보는 과정에서 자연스럽게 다시 다뤄보도록 하겠다.
오늘은 그 대신 vi 편집기에 대해 알아보려고 한다.
vi 편집기는 윈도우 환경에서의 메모장처럼 텍스트 파일을 작성하거나 수정할 때 사용하는 기본 편집기라고 생각하면 이해하기 쉽다. 리눅스를 다루다 보면 설정 파일을 열어 수정해야 하는 경우가 자주 생기는데, 그럴 때 가장 기본적으로 접하게 되는 편집기가 바로 vi다.
비슷한 편집기로 vim도 있다. vim은 vi를 기반으로 기능이 더 보강된 편집기라고 보면 된다. 다만 기본적인 파일 수정 작업은 vi만으로도 충분히 가능하기 때문에, 여기서는 우선 vi를 기준으로 설명하려고 한다. 기초를 먼저 익힌 뒤에 확장된 기능을 배우는 편이 훨씬 이해하기 쉽기 때문이다.
참고로 vim은 환경에 따라 기본으로 설치되어 있지 않을 수도 있다.
혹시 실행해 보려는데 동작하지 않는다면 이상하게 생각하지 말고, 설치 여부부터 확인해 보면 된다.
위의 캡처화면은 vi 편집기의 도움말 화면을 가져온 것이다. 혹여 기억 안나는 분들을 위해 다시 한번 기재하자면 도움말을 보는 방법은 명령어 –help 라는 방식으로 이루어진다. 기억이 안 난다면 전편을 다시 한번 꼼꼼히 읽어보고 오도록 하자.

위와 같이 명령어들이 있는데 우선 vi 편집기를 열어보도록 하자. 우선 본인이 테스트 파일을 만들 경로로 이동하여 아래와 같이 명령어를 입력한다.
vi 생성할 파일명(혹은 오픈할 파일명)
필자는 Test 라는 이름의 파일의 신규 생성을 진행해 보았다.
저장 시에는 shift + ;(:)입력 후 wq를 입력하고 return(Enter)를 입력하면 저장이 된다. 만약 저장하고 싶지 않다면 wq 대신 q를 입력하고 return(Enter)를 치면 된다.
만약 이렇게 해서 만든 파일을 나중에 다시 열고 싶다면 그때도 위와 동일하게 vi 파일명으로 오픈하면 된다. 종료 시 wq로 저장을 하여 기존에 존재하는 파일이면 해당 파일이 열릴 것이고 저장된 파일이 없다면 위 화면과 같이 신규 생성 화면이 노출될 것이다. 기본적으로 vi 편집기는 최초 오픈 시 커서 이동 모드로 세팅이 되어 있다. 이 말은 이 상태에서는 바로 편집이 안 된다는 말이다. 여기서 키보드의 i를 누르면 기본 편집 모드로 진입한다. i 를 누른 순간부터 키보드 입력이 된다. 입력을 다 마쳤으면 ESC를 누르면 다시 이동 모드로 전환된다.
그러면 우리는 여기서도 지난번과 같이 핵심적인 몇 가지 명령어를 파악해보는 시간을 갖도록 하겠다. 이것들 이후 추가로 공부하는 것은 이 글을 읽는 본인들의 몫으로 남겨두도록 하겠다. 그러면 우선 이동 모드부터 확인해 보자.
| 명령어 정리 | |
|---|---|
| shift + 4 | 해당 행의 끝으로 커서가 이동 |
| shift + 6 | 해당 행의 처음으로 커서가 이동 |
| [[ | 문서의 첫번째 행의 처음으로 커서가 이동 |
| ]] | 문서의 마지막 행의 처음으로 커서가 이동 |
| x | 커서가 위치한 곳의 한글자 삭제 |
| dd | 커서가 위치한 행 삭제 |
| u | 수정한 것 되돌리기(뒤로가기) |
| yy | 행 복사(아래 명령어들과 함께 조합으로 쓰인다) |
| P(대문자 P) | 복사한 행을 커서가 있는 행 위로 붙여넣기 |
| p(소문자 p) | 복사한 행을 커서가 있는 행 아래로 붙여넣기 |
| v -> y | -v 를 누르면 커서를 이동하여 블록 설정이 가능 -v 를 누른 후 블록 설정 완료 후 y를 누르면 블록 내용이 복사된다. 그 이후 붙여넣기 처리는 위에 기재한 P/p와 동일한 방식으로 처리 된다. |
| / | / 입력 후 찾을 내용을 입력하고 Enter로 검색한다. 검색 후 N키를 누르면 다음 검색 결과로 이동된다. |
위의 명령어들을 익히고 응용한다면, vi 편집기에서 기본적인 문서들을 만드는 데는 문제가 없을 것이라 생각한다. 일단 위의 것들 만이라도 자유자재로 사용할 수 있게 익혀 보자. 그런데 이렇게 어렵사리 만든 문서는 어떻게 저장을 하는 걸까? 위에서 먼저 가볍게 언급하긴 했지만 다시 한 번 알아보자. 먼저 명령 모드로 진입을 해야 하는데 명령 모드의 경우는 : (콜론)으로 진입이 된다. 진입 후에는 아래와 같은 명령어가 사용된다.
| 명령 모드에서 가능한 명령어 | |
|---|---|
| wq | 저장 후 종료하기 |
| q! | 강제 종료하기 |
| w | 저장하기 |
| q | 종료하기 |
이렇게 명령 모드에서 저장 후 종료하기로 나오게 되면 다음과 같이 파일이 생성된 것을 볼 수 있다. 이렇게 생성된 파일은 위에 설명했던 대로 vi 편집기로 열 수도 있지만 단순히 내용을 읽기만을 원하는 것이라면 cat이라는 명령어로도 오픈을 해볼 수 있다. 그러면 오늘은 여기서 마치도록 하겠다. vi 편집기의 경우 유용하게 쓰이는 경우가 많으므로 위에 기재한 기본적인 명령어들은 익혀두고 다음으로 넘어가도록 하자.


Add your first comment to this post