리눅스에서 티먹스를 사용하는 방법(그리고 왜 화면보다 낫다)

  • 쩐쨀챌쩌쩌쩔채.
  • 2020 년 5 월 14 일,동부 표준시 오전 8 시
팟마와티 아흐마드 재누리/

리눅스tmux명령은screen과 같은 터미널 멀티플렉서입니다. 그 지지자들은 많은 보컬,그래서 우리는 두 가지를 비교하기로 결정했다. tmux는 정말 더 나은가요,아니면 당신이 알고있는 것을 선호하는 경우 일 뿐입니까?터미널 멀티플렉서에는 터미널 멀티플렉서,터미널 멀티플렉서,터미널 멀티플렉서,터미널 멀티플렉서,터미널 멀티플렉서,터미널 멀티플렉서,터미널 멀티플렉서,터미널 멀티플렉서,터미널 멀티플렉서,터미널 멀티플렉서,터미널 멀티플렉서,터미널 멀티플렉서,터미널 멀티플렉서,터미널 멀티플렉서,터미널 멀티플렉서,터미널 멀티플렉서,터미널 멀티플렉서,터미널 멀티플렉서 단일 터미널 창 내에 여러 개의 창을 가질 수 있으며 그 사이를 앞뒤로 이동할 수 있습니다. 창은 당신에게 독립적 인 명령 줄을 제공 각각의 창으로 나눌 수 있습니다.

또한 세션을 분리 할 수 있으며 백그라운드에서 실행 헤드리스 엔티티가된다-당신도 그것을 시작 터미널 창을 닫을 수 있습니다. 준비가 되면 새 터미널 창을 열고 계속 실행되는 세션을 다시 연결할 수 있습니다. 당신은 또한 연결을 통해 이것을 할 수 있습니다.

광고

한 컴퓨터에서 세션을 분리하고 집에 가서 원격 컴퓨터에 로그인할 수 있습니다. 다시 연결하면 백그라운드 세션을 다시 연결하고 대화식으로 다시 사용할 수 있습니다.

화면 명령은 무엇입니까?

screen명령은 또한 터미널 멀티플렉서이며 옵션으로 가득합니다. 당신이 그것으로 할 수있는 모든 것에 대한 진상을 위해,우리의 심층 기사를 확인하십시오.

이번에는tmux에 집중하겠습니다. 우리가 따라 가면서screen이 동일한 기능이나 기능을 어떻게 처리하는지 언급 할 것입니다.

광고

단 한 가지는screen에 대해 우리를 괴롭혔다. 우리는 우리가 그것을 얻을 때 그것을 다룰 것이고,tmux운임이 더 좋은지 볼 것입니다.

관련:리눅스의 화면 명령을 사용하는 방법

:

sudo apt-get install tmux

만자로에 당신은 사용할 수 있습니다pacman:

sudo pacman -Sy tmux

페도라 31 에서tmux가 이미 설치되어 있습니다.

티먹스 세션 시작

tmux시작하려면,그냥 입력하고 입력 히트:

tmux

tmux세션에 있을 때 터미널 창에 상태 표시줄이 표시됩니다.

상태 표시줄의 오른쪽에는 호스트 이름과 시간 및 날짜가 표시됩니다. 왼쪽에는 다음 세션 관련 정보가 표시됩니다:

  • : 이 세션 이름입니다. 기본적으로 0 부터 시작하여 번호가 매겨집니다. 아래 세션에 의미있는 이름을 줄 수있는 방법을 다룹니다.
  • 0:배쉬*:0 은 이 세션의 첫 번째 창임을 나타냅니다. 이 세션에서 실행되는 유일한 프로세스는bash입니다. 프로그램을 실행하면 그 이름이 여기에 나타납니다. 별표(*)는 보고 있는 창을 의미합니다. tmux세션에서 새 창을 만들 때마다 해당 창 번호와 실행 중인 프로그램의 이름이 상태 표시줄에 추가됩니다.

screen명령은 상태 표시줄을 제공하지 않습니다. 당신은 장님 비행과 연습의 비트를 소요 무슨 일이 일어나고 있는지 알고 순발력에 의존해야합니다.

광고

플러스 측면에서,당신은 터미널 창 부동산의 라인을 잃지 않을 것입니다. 물론,당신은 일반적으로 가치있는 터미널 멀티플렉서를 사용하여 만들기 위해 터미널 창을 확장 할 것입니다. 이 경우 상태 표시 줄에 대한 한 줄의 손실은 그다지 문제가되지 않습니다. 당신이 정보를 볼 수 있도록 우리는 기본 크기로 여기에 터미널 윈도우의 이미지를 남겼습니다.

명령은 키 입력을 사용하여tmux에 주어지며 두 부분이 있습니다. 먼저tmux의 관심을 얻기 위해. 그런 다음 다음 키를 빠르게 눌러tmux로 명령을 보냅니다. 명령은 문자,숫자,문장 부호 또는 화살표 키를 눌러 제공됩니다.

screen에서도 마찬가지입니다.상태 표시줄이 황색으로 바뀝니다. 그런 다음 창을 죽이고 싶어 확인하라는 메시지가 표시됩니다.당신이 당신의 마음을 변경하는 경우

광고

를 눌러 창을 닫습니다. 당신은 나중에 입력을 누를 필요가 없습니다;와이 또는 엔 당신의 선택을 등록하기에 충분하다.

를 누르면 창이 닫힙니다. 이 창이 이 세션의 유일한 창이므로 세션이 종료됩니다.

tmux세션이 닫히고tmux를 시작한 명령줄로 돌아갑니다. 터미널 창에””가 표시됩니다.

이것은 명백한 것을 알리는 것처럼 보일 수 있지만 세션을 닫고 분리 및 실행하지 않았다는 확인입니다. 우리는 아래 세션을 분리 논의 할 것이다.

명명된 티먹스 세션 시작

tmux여러 세션을 정기적으로 시작하면 각 세션에 의미 있는 이름을 지정하는 기능을 빠르게 이해할 수 있습니다. screen에서 세션의 이름을 지정할 수도 있지만 세션 창의 아무 곳에도 표시되지 않습니다.

광고

세션 이름으로tmux를 시작하려면new(새 세션)명령과-s(세션 이름)옵션을 사용합니다. 우리의 세션은”괴짜-1″라고 할 것입니다 그래서 우리는 다음을 입력:

tmux new -s geek-1

tmux세션이로드되면,”긱-1″맨 왼쪽에있는 상태 표시 줄의 첫 번째 항목으로 표시됩니다.

더 추가하 Windows

새로운 창이 생성에 현재 세션 Ctrl+B,다음 C. 당신을 얻을 것 빈 터미널 창에는 현재 세션이 있습니다. 그래서 우리는이 새 창에서 실행 뭔가를해야합니다,의는-w(따라)옵션을 사용하여dmesg명령을 시작하자:

dmesg -w
광고

이제 우리는 세션에서 두 개의 창이;하나는top를 실행하고,다른dmesg. 우리는 한 번에 한 명만 볼 수 있지만(한 순간에 더 많은 것을 볼 수 있습니다).

상태 표시줄의 왼쪽을 확인합니다. 우리는 여전히”괴짜 -1″tmux세션에 있습니다. 창 0 에서 상단이 실행되고 창 1 에서dmesg이 실행 중입니다. dmesg뒤의 별표(*)는 어떤 창이 표시되는지 알려줍니다.

창 사이를 이동하려면 다음을 누릅니다.:

  • 엔:다음 창을 표시합니다.
  • 페이지:이전 창을 표시합니다.
  • 0~9:0~9 로 번호가 매겨진 창을 표시합니다.

목록에서 창을 선택할 수도 있습니다. 그런 다음 창 목록이 나타납니다.

광고

호박색 강조 표시줄을 이동하려면 위쪽 또는 아래쪽 화살표,홈 또는 끝을 누릅니다. 디스플레이의 하단 부분에는 강조 표시된 창에서 콘텐츠의 미리 보기가 표시됩니다.

엔터를 눌러 강조 표시된 창으로 이동하거나,전환하지 않고 창 목록을 떠납니다.

세션 분리 및 연결

세션을 분리합니다. 그것은 백그라운드에서 계속 실행됩니다,하지만 당신은 보거나 상호 작용 할 수 없습니다.

우리는 세션에서top를 시작 했으므로 시연 할 실행중인 프로세스가 있습니다. 세션이 사라지고 백그라운드 세션이됩니다.

광고

원래 터미널 창으로 돌아갑니다. 세션이 분리되었음을 알리는tmux의 메시지가 있습니다. 그것은 또한 우리가 세션에 준 이름을 상기시켜줍니다. 이는 백그라운드 세션에 연결한 다음 대화형 세션에 복원하기 위해 사용하기 때문에 편리합니다.

분리된 세션을 첨부하려면-t(대상 세션)옵션과 함께 자명attach-session명령을 사용합니다. 우리는 또한 우리가 기억하고 싶은 세션의 이름을 제공 할 것입니다.

다음을 입력합니다:

tmux attach-session -t geek-1

우리의 세션이 반환되고 다시 보이는 대화 형 세션이됩니다.

세션을 분리하기 전에 실행한 장기 실행 또는 연속 프로세스는 세션을 연결할 때 백그라운드에서 계속 실행됩니다(완료되지 않은 경우).

screen이 작업을 수행 할 수 있지만 직관적으로 수행 할 수는 없습니다.

여러 세션 처리

다른 터미널 창을 열고”괴짜”라는 새tmux세션을 시작합시다-2″:

tmux new -s geek-2

그 세션에서,우리는 시작합니다dmesg:

dmesg -w
광고

이제,우리는 우리의 원래”괴짜-1″tmux세션을 가지고 있고,새로운 하나는”괴짜-2.”

상태 표시 줄은이 세션이”긱-2″라고 우리에게 보여주고,그것은dmesg를 실행하는 하나의 창이 있습니다.이 세션에는 다음 세션이 포함됩니다.이 세션에서는 다음 세션의 목록을 볼 수 있습니다.

명확하게하기 위해,이 세션의 목록입니다. 우리가 이전에 본 비슷한 디스플레이는 하나의 세션에서 윈도우의 목록이었다.

위쪽 및 아래쪽 화살표,홈 및 끝을 눌러 호박색 강조 표시줄을 이동할 수 있습니다. 하단 섹션에는 강조 표시된 세션의 콘텐츠 미리 보기가 표시됩니다.

오른쪽 화살표를 누르면 강조 표시된 세션의 창이 표시됩니다.

광고

엔터를 눌러 강조 표시된 세션이나 창으로 이동하거나 세션을 변경하지 않고 세션 목록을 종료합니다. 새 세션을 선택하면 현재 세션이 분리되고 선택한 세션이 연결됩니다.

우리는 이것을하기 전에”괴짜 -2″세션을 분리했습니다. 그러나 원래 터미널 창에 여전히 연결된 세션에서는 이 작업을 수행할 수 있습니다. 당신이 할 때,모든 화면 변경은 두tmux세션에서 동시에 나타납니다.

screen명령은 유사한 명령 세트를 통해서도 이 작업을 수행할 수 있습니다.

창 창 작업

를 누른 다음 큰따옴표(“”)를 누르면 창을 가로로 두 개의 창으로 분할합니다.

광고

이것은 현재 창에만 영향을 미칩니다. 위쪽 창에서tmux ls명령을 사용하여 이 세션의 창을 나열했습니다. 이 두 가지가 있으며,상태 라인은 우리가 창 하나에있어 우리에게 알려줍니다. 그리고 0(영),우리는 우리가 그것을 왼쪽으로 그냥 볼 수 있습니다.

이들은 두 개의 독립적 인 명령 행이며 하나의 창에 두 개의 뷰가 아닙니다. 우리는 각 창에서 다른 명령을 실행하여이를 표시 할 수 있습니다.

다음을 입력합니다:

uname -a

ls -hl

한 창에서 다른 창으로 이동하려면 위,아래,왼쪽 또는 오른쪽 화살표를 누릅니다.현재 창을 세로로 분할합니다.

광고

를 눌러tmux각 창의 번호를 간단히 깜박입니다.

이 숫자는tmux의 프롬프트 및 메시지에 사용됩니다. 현재 창을 닫습니다. 상태 표시줄이 호박색으로 바뀌고 해당 창 번호를 닫을 것인지 확인하는 메시지가 표시됩니다. 를 눌러 와이 창을 제거하거나 엔 그대로 둡니다.

를 누르면 창이 제거됩니다.

screen명령에는 창도 있지만 사용하기가 덜 직관적입니다. screen에 대해 우리를 괴롭히는 것은 창이있는 세션을 분리하면 해당 세션을 다시 연결할 때 사라집니다. 이것은 매우 빨리 늙습니다.아래tmux에서 사용할 수 있는 다른 명령의 치트 시트를 포함했습니다.

세션 명령

  • 초:세션을 나열합니다.
  • $:현재 세션의 이름을 바꿉니다.
  • 디:현재 세션을 분리합니다.그런 다음 다음을 수행하십시오.:도움말 페이지를tmux에 표시합니다.

창 명령

  • 기음:새 창을 만듭니다.
  • ,: 현재 창의 이름을 바꿉니다.
  • 승:창을 나열합니다.
  • 엔:다음 창으로 이동합니다.
  • 페이지:이전 창으로 이동합니다.
  • 0~9:지정된 창 번호로 이동합니다.

창 명령

  • %: 수평 분할을 만듭니다.
  • “:수직 분할을 만듭니다.
  • 시간 또는 왼쪽 화살표:왼쪽 창으로 이동합니다.
  • 나 또는 오른쪽 화살표:오른쪽 창으로 이동합니다.
  • 제이 또는 아래쪽 화살표:아래 창으로 이동합니다.
  • 케이 또는 위쪽 화살표:위의 창으로 이동합니다.
  • 질문:창 번호를 간단히 표시합니다.
  • 오:순서대로 창을 통해 이동합니다. 그들 모두를 통해 루프 때까지 누를 때마다,다음에 이동합니다.
  • }:현재 창의 위치를 다음 창으로 바꿉니다.
  • {:현재 창의 위치를 이전 창으로 바꿉니다.
  • 엑스:현재 창을 닫습니다.

기능면에서

을 비교하는 방법은screentmux모두 유사하게 수행되며 동일한 주요 기능을 제공합니다. 그것은 당신이 현저하게 다른 그 기능에 액세스하는 방법입니다. tmux는 야바위꾼,다양한 기능을 얻을 수있는 더 편안한 방법을 제공합니다. 그러나,그 유일한 차이가 아니다.

광고

tmux에서 세션과 창의 이름을 바꿀 수 있는 기능은 깔끔하고 세션을 다시 연결할 때 창을 유지한다는 사실이 게임 체인저입니다.

screen, 반면에 세션을 분리하고 다시 연결할 때 창이 완전히 손실됩니다. 이것은 당신이 처음에 분리를 방지 할 정도로 거의 성가신.

엄청나게 유연한 스크립팅 기능을 포함하여tmux에 훨씬 더 많은 것이 있습니다. 당신은 그것을 확인하기 위해 자신에게 빚지고있다.

데이브 맥케이
펀치 종이 테이프가 유행 할 때 데이브 맥케이는 처음 컴퓨터를 사용,그는 그 이후로 프로그래밍되었습니다. 30 년이 넘는 시간 동안,그는 현재 전임 기술 저널리스트입니다. 그의 경력 동안,그는 데이터 보호 책임자로,가장 최근에 프리랜서 프로그래머,국제 소프트웨어 개발 팀의 관리자,정보 서비스 프로젝트 매니저로 일하고있다. 데이브는 리눅스 전도자이자 오픈 소스 옹호자이다.전체 바이오 읽기”