데보션앱 소개페이지 바로가기
로그인 선택

신고하기

CLOSE
신고사유 (대표 사유 1개)
상세내용 (선택)
0/200
  • 신고한 게시글은 더 이상 보이지 않습니다.
  • 이용약관과 운영정책에 따라 신고사유에 해당하는지 검토 후 조치됩니다.
  • 허위 신고인 경우, 신고자의 서비스 이용이 제한될 수 있으니 유의하시어 신중하게 신고해 주세요.
(이 회원이 작성한 모든 댓글과 커뮤니티 게시물이 보이지 않고, 알림도 오지 않습니다.)

미리보기

커뮤니티

      1,234

      badge 23.06.15

      글 등록

      카테고리를 선택해주세요.

      DEVOTEE를 활성화 시키면
      지금 작성한 커뮤니티 글에 대해 1개의 댓글을 달아줍니다.

      버튼을 누르면 글 수정 시 ChatGPT가 작성한 댓글이 수정됩니다.

      임시저장함에 저장되었습니다. 저장일시 : 2022.5.17 14:29:08

      임시저장함

      제목을 선택하시면 이어서 작성이 가능하며,
      최대 20건까지 저장합니다.
      컨텐츠 유형, 제목, 저장일시, 삭제로 이뤄진 임시저장 목록
      컨텐츠 유형 제목 저장일 삭제

      데보션 블로그 게재 요청

      CLOSE
      • *
      • *

      본인인증

      효율적인 데보션 서비스 이용 및
      고객님의 소중한 개인정보보호를 위해
      본인인증을 진행해주세요. 본인인증 미 진행 시 로그인이 제한됩니다.
      본인인증 실패

      본인인증 로그인에 실패하였습니다.
      회원이 아니시거나 본인인증 등록이
      완료되지 않은 사용자입니다.

      회원정보 연결

      (tmux) 터미널을 효율적으로 사용하기 (1/2)

      seungkyua 23.01.18
      16,376 22 1

      command line 명령을 사용할 때 터미널에서 여러 기능들을 사용해야 할 때가 있다.

      예를 들어 여러 윈도우(창)을 띄워놓고 필요에 따라 옮긴다던가 하나의 윈도우을 상하, 혹은 좌우로 구분하여 나눠서 사용하는 경우가 있다.

      보통은 명령어를 여러 디렉토리를 옮겨가며 작업하기 때문에 디렉토리 마다 윈도우를 만들어 사용한다.

      혹은 포그라운드로 프로세스를 띄워 출력되는 로그를 확인하고, 다른 윈도에서 작업하는 경우도 있다.


      위와 같은 기능을 제공하는 툴에는 tmux 라는 sw가 있다.

      일반적으로 linux 에는 기본으로 설치되어 있고 mac 에서는 쉽게 설치할 수 있으므로 쉽게 활용할 수 가 있다.


      1. 세션 관리

      세션 만들기

      tmux 는 세션 단위로 구분하여 관리한다. 자신만의 새로운 세션을 만들어 독립으로 사용할 수 있다.

      $ tmux new -s ahnsk

      tmux-1.png

       ahnsk 이라는 새로운 세션(session)이 생성되면서 1:zsh 라는 윈도우(window) 1개가 기본적으로 생성되었다.

      $ exit

      exit 는 현재의 윈도우를 삭제한다. 지금은 세션에 1개의 윈도우 밖에 없기 때문에 윈도우가 삭제되면 해당 세션도 삭제된다.


      command prefix

      tmux 에서는 vi 처럼 명령모드를 사용할 수 있다.

      Ctrl + b (control 키와 b 키를 동시에 누름)를 입력한 이후에 명령어를 입력하면 되는데 명령 모드를 알려주는 이 키 조합을 command prefix 라고 한다.

      줄여서 앞으로는 prefix 라고 한다.


      prefix + t 를 누르면 화면에 시간에 표시된다.

      tmux-2.png


      Detaching 과 Attaching

      exit 는 윈도우를 삭제(경우에 따라서는 세션까지도 삭제) 하기 때문에 이전의 세션과 윈도우를 계속 유지 시키면서 tmux에서 빠져나오고 싶을 때도 있다.

      이 때 사용해야할 기능이 detaching 기능이다.

      $ top

      tmux-3.png

      prefix + d 를 입력하여 detaching 한다.


      tmux-4.png

      [detached (from session ahnsk)] 가 출력되고 원래의 터미널 창으로 빠져나온 것이 확인 된다.


      -d  옵션으로 새로운 세션을 만들고 바로 detaching 할 수 도 있다.

      $ tmux new -s dummy -d

      세션을 조회하여 기존에 만든 세션의 리스트를 확인할 수 있다.

      $ tmux ls
      
      --- output ---
      ahnsk: 1 windows (created Sat Jan 14 14:51:09 2023)
      dummy: 1 windows (created Sat Jan 14 15:25:39 2023)

      기존의 만든 ahnsk 세션으로 들어가고 싶으면 attach 명령을 쓰면 된다.

      $ tmux attach -t ahnsk

      tmux-5.png


      세션 삭제

      kill-session 옵션으로 세션을 삭제할 수 있다.

      $ tmux kill-session -t ahnsk
      $ tmux kill-session -t dummy


      2. 윈도우 관리

      윈도우 만들기

      session 을 만들면 새로운 윈도우도 기본으로 생성된다고 했다. 이 때 -n 옵션을 사용하여 생성되는 윈도우에 이름을 넣을 수 있다.

      $ tmux new -s ahnsk -n shell

      tmux-6.png

      prefix + c 명령으로 새로운 윈도우를 만들 수 있다. 이렇게 새로 만든 윈도우에 top 명령을 실행해 보자.


      tmux-7.png


      윈도우 이름 변경

      첫번째 윈도우의 이름은 shell 이고 두번째 top 이 실행되고 있는 윈도우의 이름은 top 이다.

      (top 이 실행되고 있으므로) 두번째 윈도우 이름을 process 로 변경해 보자.


      prefix + , 로 윈도우 이름을 변경할 수 있다.

      tmux-8.png

      이름을 넣은 뒤에 enter 를 치면 된다.



      윈도우 이동

      작업 윈도우를 아래 명령으로 옮겨 다닐 수 있다.

      prefix + n : 현재 윈도우 다음(next) 윈도우로 이동하기

      prefix + p : 현재 윈도우 이전(previous) 윈도우로 이동하기

      prefix + 1 : 첫번째(1) 윈도우로 이동하기

      prefix + 5 : 다섯번째(5) 윈도우로 이동하기

      prefix + w : 윈도우 리스트를 보여주고 선택하여 이동하기

      tmux-9.png


      윈도우 닫기

      prefix + & 로 명령으로 확인 입력(y)을 받으면 윈도우를 닫을 수(삭제할 수) 있다. exit 를 입력하여 확인없이 바로 윈도우가 삭제된다.

      tmux-10.png


      윈도우 이름으로 생성하기

      prefix + : 으로 명령어 입력창을 띄울 수 있다. 여기에 new-window -n monitor 라고 입력하고 enter 를 치면 새로운 윈도우에 이름을 지정하여 생성할 수 있다.

      tmux-14.png


      3. 패인 관리

      패인(pane) 만들기

      윈도우 안의 구분되는 영역을 패인이라 한다.

      윈도우를 수평으로 2개의 패인으로 나누거나 수직으로 2개의 패인으로 나눌 수 있다.


      prefix + % : 윈도우를 수평(좌우)으로 2개의 패인으로 나눈다.

      tmux-11.png

      prefix + " (double quote) : 윈도우를 수직(위아래)으로 2개의 패인으로 나눈다.


      tmux-12.png


      패인 이동하기

      prefix + Left 화살표 : 좌측 패인으로 이동하기

      prefix + Right 화살표 : 우측 패인으로 이동하기

      prefix + Up 화살표 : 위 패인으로 이동하기

      prefix + Downe 화살표 : 아래 패인으로 이동하기

      prefix + o : 시계 방향으로 패인 이동하기


      패인 삭제하기

      prefix + x 명령으로 현재 선택된 패인을 삭제할 수 있다. exit 로도 삭제가 가능하다.

      가끔 화면에 키보드 입력이 안돼서 exit 를 화면에 입력할 수 없는 경우가 있다.

      이 경우에는 명령모드인 prefix + x 로 삭제해야 하므로 명령모드도 알아 두는 것이 좋다.

      tmux-13.png

      댓글 0

      DEVOTEE를 활성화 시키면
      지금 작성한 댓글에 AI가 댓글을 달아줍니다.

      seungkyua 님의 최신 블로그

      더보기
      동영상 기고하기