기본적으로 컴퓨터에는 어떤 데이터를 저장할 수 있습니다
메모장 켜서 텍스트 내용을 저장하는 것처럼 말이죠
이 텍스트 데이터를 처리하기 위한 프로그램을 Text Editor라고 합니다
이번 시간에는 리눅스에서 사용하는 Text Editor 중 유명한 vi 에디터를 다뤄봅시다
vi Text Editor 실행
Windows 운영체제에서는 GUI 방식으로 메모장에 텍스트 데이터를 저장하지만
리눅스에서는 CLI 기반의 텍스트 에디터를 사용하여 데이터를 읽고, 쓰고 할 수 있습니다
vi 명렁어를 입력하시면 이런 화면이 나올 겁니다
vi : (visual editor) 간결하면서 강력한 기능으로 사용자가 많습니다
VIM 은 "Vi IMproved"의 준말로 vi 편집기의 확장판으로 생각하면 됩니다
여기까지 Windows에서 메모장을 실행한 것처럼 리눅스에서 메모장을 키신 겁니다
리눅스 메모장에 텍스트 데이터를 작성해 보자
글을 작성하기 앞서 vi에는 2가지 모드가 있습니다 바로 입력 모드와 명령 모드입니다
vi는 CLI 기반이기 때문에 마우스가 없습니다 그렇기에, 저장과 종료 버튼이 없습니다 모든 걸 명령어를 처리하기 때문에 명령 모드가 존재합니다
이제 글을 작성해봅시다 키보드 i를 누르면 좌측 하단에 INSER 글자가 나타납니다 (입력 모드로 전환)
Windows 메모장처럼 자유롭게 글을 작성할 수 있습니다 Enter로 줄바꿈도 가능합니다
※주의※ : 한글 패치를 설치하지 않았기 때문에 한글 입력이 불가능합니다!
명령 모드로 파일 저장
글을 다 작성했으면 이 내용들을 파일로 저장해 봅시다
Windows에서는 Ctrl+s 키를 눌러 쉽게 저장했겠지만, 리눅스 vi에서는 명령 모드로 전환해야 합니다
명령 모드 전환은 ESC 키를 누르면 됩니다 그러면 좌측 하단에 INSERT 텍스트가 사라진 걸 확인할 수 있을 겁니다
이제 :w [저장할 파일명] 명령어로 파일을 저장해 줍니다
[ :(콜론)은 ;(세미콜론)+Shift 동시에 눌러야 합니다 ]
전 :w test_vi 파일을 저장했습니다
사진과 같이 정상적으로 저장되었다고 나옵니다
vi 기능을 종료하고 싶으면 명령 모드로 전환 후(ESC) :q 명령을 입력해 주면 됩니다
생성된 파일을 확인해 보면 홈 디렉터리에 test_vi라는 파일이 생성되었습니다
vi 파일 열기, 수정 및 저장과 종료
test_vi 파일이 잘 저장됐는지 확인하기 위해 파일을 열어봅시다
vi 전달 인자는 확인할 파일명을 적어주시면 됩니다
파일이 정상적으로 열렸네요
이번엔 이 파일을 수정해 보도록 하겠습니다
수정은 입력 모드로 전환해야 합니다 ( 입력 모드 전환 단축키 : i )
좌측 하단에 INSERT 텍스트가 나오면 파일을 수정할 수 있습니다
저장은 위에서 배운 대로 명령 모드로 전환 후(ESC) :w 명령어 입력
이번에는 :w 뒤에 전달인자를 안 적어주셔도 됩니다 앞에서 파일을 열 때 이미 파일명을 지정했기 때문입니다
Tip : 저장 후 종료를 합쳐서 사용하는 방법
저장 명령어 :w
종료 명령어 :q
:wq 를 합쳐서 입력하면 파일을 저장과 동시에 종료할 수 있습니다
vi 기타 단축 기능
Windows 메모장에 복사, 붙여넣기, 찾기처럼 그 외에 단축키들을 소개해 드리겠습니다
1️⃣ 찾기 기능입니다
vi 파일로 들어가서 명령 모드로 전환해 주세요 (ESC)
찾기 명령어는 / (슬래시) 뒤에 검색 단어를 입력하면 됩니다
ah!이라는 단어를 찾고 싶다면 사진과 같이 /ah!를 입력하면 ah! 단어 앞으로 커서가 이동됩니다
추가로 똑같은 글자가 여러 개인 as라는 단어를 찾아봅시다
명령 모드에서 /as 입력 후 Enter를 누르면 좌측 하단에 "search hit BOTTOM..." 텍스트나 나오게 됩니다
여기서 키보드 n 을 누르면 다음 as라는 단어를 찾아 커서가 이동됩니다 반대로 이전에 as 단어로 이동하고 싶으면
Shift+n 버튼을 누르면 됩니다
n : 다음
N : 이전
2️⃣ 특정줄로 이동하는 명령어입니다 명령 모드로 전환 후 :[특정 줄 번호]를 입력하면 됩니다
:3을 입력했다면 3번째 줄로 커서가 이동됩니다
3️⃣ 줄 삭제 명령어입니다 vi에서 여러 줄을 삭제하고 싶은데 드래그가 안되니 답답합니다
그럴 땐 명령 모드로 전환 후 지우고 싶은 줄에 커서를 이동시킨 뒤, dd를 눌러보세요
커서에 있던 ah! 단어가 사라졌습니다
그다음 여러 줄을 삭제해 봅시다 dd를 누르기 전에 원하는 줄 수를 입력하면 됩니다
지우고 싶은 줄에 커서를 올려두고 원하는 줄을 입력하고 dd를 눌러주세요
전 3을 입력하고 dd를 눌러 3줄을 제거했습니다
이번 시간에는 vi 기능에 기본적인 단축 기능까지 확인해 봤습니다 사실 vi 명령어는 이 내용 말고도 더욱 많은 기능을 가지고 있습니다 하지만 기본적으로 이 내용만 알고 있다면 vi를 사용하는데 문제없을 겁니다
다음 시간에는 vi가 아닌 cat 명령어로 파일 확인 방법에 대해 공부해 봅시다
[ 참고 사이트 ]