화면 분할 방법

가로로 분할하려면 ':[개수]sp' 키워드를 사용하며 (split), 세로 분할을 위해서는 ':vs' 키워드를 사용한다.

 

/etc/login.defs 파일을 :sp 명령을 사용하여 가로 분할한 것을 확인할 수 있다.

 

숫자를 함께 조합하여 사용하면, 지정한 갯수만큼 분할되는 것을 확인할 수 있다.

 

:vs 키워드를 통해, 세로 분할된 것을 확인할 수 있다.

 

분할 화면을 빠져나오기 위해 q 명령을 사용하면, 순차적으로 벗어날 수 있게 된다.

 

 

분할 화면 내의 이동 방법

ctrl + ww 입력을 통해 화면 간의 이동, ctrl + wn 입력을 통해 분할 화면을 추가할 수 있다.

 

ctrl + ww 명령을 통해, 분할 화면 간의 이동이 가능한 것을 확인할 수 있다.

 

ctrl + wn 명령을 통해, 공백으로 채워진 분할 화면이 추가된 것을 확인할 수 있다.

 

 

command 명령 실행

 

1) ! [명령]

vi 문서 편집을 잠시 중단하고, 쉘 명령어를 수행한다. ENTER 를 누르면 다시 편집화면으로 되돌아온다.

 

!pwd 명령을 사용하여 잠시 문서 편집을 중단하고, 현재 작업 위치를 확인할 수 있다.

ENTER 를 누르면 문서 편집 화면으로 되돌아오는 것을 확인할 수 있다.

 

2) .! [명령]

명령 수행 결과를 커서 위치 기준으로 문서 내에 삽입한다. 원문 내용이 삭제되며 추가되므로, 원본을 유지하고자 한다면 행 추가 후에 사용해야 한다.

 

현재 디렉토리의 하위 파일 및 디렉토리 목록을 /etc/inittab 파일에 추가하고자 한다.

 

커서가 위치해있던 파일의 맨 처음 부분에, ls -l 명령의 결과물이 추가된 것을 확인할 수 있다. 

 

3) 숫자! [명령]

지정한 행 번호 위치에, 명령의 출력 결과를 삽입한다.

 

3번째 행에 echo hello 명령의 출력물이 삽입된 것을 확인할 수 있다.

 

주의할 점! 문서 내에서 명령어를 사용할 때는, 문서를 오픈한 위치가 기준이 된다.

 

문서 내에서 pwd 명령을 수행하면, 파일이 오픈된 위치가 현재 작업 디렉토리인 것을 확인할 수 있다.

 

문서 내에서 cd 명령을 통해 디렉토리 이동 후 pwd 명령을 수행하면, /home 디렉토리가 현재 작업 디렉토리인 것을 확인할 수 있다.

4) 숫자r![명령]

지정한 행의 하단에 행 추가를 한 후에, 명령 출력 결과물을 삽입한다.

 

8번째 행의 하단에 행 추가를 한 후에, 출력 결과물을 삽입한 것을 확인할 수 있다.

 

 

문서 열기 & 저장 & 종료

1) e! [파일명] 

vi 문서 편집 작업 중, 다른 문서 파일을 연다. 존재하는 파일을 지정하면 해당 파일이 열리며, 존재하지 않는 파일을 지정하면 해당 이름을 가진 빈 파일이 열린다. 강제성이 있으므로 ! 키워드와 함께 사용한다.

 

e! 명령을 통해 test1이라는 이름의 새 문서 파일을 열고, 편집하고자 한다.

 

test1 이라는 파일이 생성되었으며, 1234 라는 내용을 작성하였다.

 

문서 내에서 명령을 수행하는 경우 해당 문서가 오픈된 pwd 를 기준으로 하기 때문에, 현재 pwd 인 /root 의 하위에 test1 파일이 저장된 것을 확인할 수 있다.


2) enew! 

vi 문서 편집 작업 중, 새로운 빈 문서 파일을 연다. 강제성이 있으므로 ! 키워드와 함께 사용한다. 별도의 이름을 지정하지 않았으므로, 저장할 때 이름을 설정해주어야 한다.

 

enew! 명령을 통해 새 문서 파일을 생성하고, 편집하고자 한다.

 

생성한 빈 파일에 @#$% 이라는 내용을 입력하고 :wq 로 저장한다면, 파일명을 지정하지 않아 저장할 수 없다는 문구가 나오는 것을 확인할 수 있다.

 

파일명을 지정한 후 저장을 시도하면, 정상적으로 문서 파일이 되는 것을 확인할 수 있다.

 

-> 문서 편집 완료 후에는 :q, :q!, :wq, :wq! 키워드를 사용하여 종료한다. 



다른 파일에 문서 내용 추가

>> 리다이렉션을 통해, 현재 파일의 내용을 다른 문서 파일에 추가할 수 있다.

 

/vtest/test1 파일의 내용을 test3 파일에 추가하고자 한다.

 

test1 의 내용을 >> 리다이렉션을 통해, test3 파일에 추가하고 저장한다.

 

test3 파일에 test1 파일이 추가되어 저장된 것을 확인할 수 있다.


 

 

 

 

공부하면서 정리한 내용을 글로 작성하였습니다.

혹시나 잘못된 내용이 있다면 댓글로 알려주시면 감사하겠습니다. :)

COMMENT