'스크린'사용시 탭


20

내가 사용하고 우분투 10.04. 내가 설치 한 후 screen:

sudo apt-get install screen

단계별로 다음 작업을 수행하여 두 개의 원격 서버에 두 개의 ssh 연결을 만들었습니다 ( 문서 에 따라 다음 단계를 수행 하십시오 ).

1. 터미널 창을 열고 명령을 실행하십시오.screen

2.Ctrl + A+ c를 눌러 새 가상 콘솔을 만듭니다.

삼. ssh usr@IP1

이때, I는 I 원격 서버 (IP1)에 접속 한 도시 한 가상 콘솔있다.

4.Ctrl + A+ c를 눌러 새 가상 콘솔을 만듭니다.

5. ssh usr@IP2

이제 두 개의 원격 서버 (IP1 및 IP2)에 연결했습니다. 그러나 , 나는 두 개의 탭이없는 하나 개의 터미널 창에서, 대신, 나는 사용해야 Ctrl+ A+ pCtrl+ A+ n에서 두 개의 가상 콘솔 사이를 전환 터미널 창.

을 사용 screen하면 터미널 창 하나에 두 개의 탭 이 있고 각 탭에 하나의 원격 서버에 대한 연결이 표시됩니다. 터미널 창에 이없는 이유는 무엇 입니까?

답변:


26

여기 내있어 .screenrc난 내 볼 어디에서나 사용하는 것이 screen같은 숫자를 창 하단과 위의 정보 라인에서 . 실제로 필요한 부분은 "모양과 느낌"입니다.

# skip the startup message
startup_message off

# go to home dir
chdir

# Automatically detach on hangup. 
autodetach on

# Change default scrollback value for new windows
defscrollback 10000

# start with visual bell as default
vbell on
vbell_msg "bell on %t (%n)"

# look and feel
caption always "%{= bb}%{+b w}%n %t %h %=%l %H %c"
hardstatus alwayslastline "%-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%<"

activity "Activity in %t(%n)"

shelltitle "shell"
shell -$SHELL

탭을screen 처음 만들 때 두 개의 을 자동으로 추가하려면 다음을 추가 할 수 있습니다 .

screen ssh usr@IP1
screen ssh usr@IP2

또한 쉘 명령 및 프롬프트에서 발행 된 이스케이프 코드를 사용하여 상태 컨텐츠를 업데이트 할 수 있습니다 . 예를 들어, 내에서 이것을 사용하여 현재 디렉토리로 상태를 업데이트합니다 .bashrc.

if [ 'screen' == "${TERM}" ]; then
  export PROMPT_COMMAND='printf "\e]2;%s %s\a" "${USER}" "${PWD}" '
fi

4
나는 항상 화면이 작동하지 않도록하기 위해 왜 하드 코어 구성이 항상 필요한지 궁금했습니다. PS shelltitle "$ |shell:"제목에 명령 이름을 추가해 보십시오 .
amphetamachine

7

당신이 키를 누르면 Ctrl+ a"화면 "탭을"볼 수 있습니다, 그들은 터미널 GUI의 탭, 당신은 당신이 사용하고있는 터미널 GUI에서 새 탭을 생성하여 그것을 수동으로 할 수 있어야 다음 새에서 실행되지 않습니다 탭 screen -r하여 화면 세션으로 돌아간 다음 Ctrl+ a와 숫자 를 사용하여 원하는 세션으로 이동 하거나 "모든 탭이있는 메뉴를 봅니다.

Ctrl +를 a 누른 다음 을 눌러 각 화면 "탭"에 이름을 지정할 수 있습니다 A .


1
screen -r -x해당 화면이 첫 번째 탭에 이미 연결된 경우 실행해야합니다 .
Arcege

3

Konsole과 같은 그래픽 터미널의 탭과 화면의 탭을 혼동하고 있다고 생각합니다. 화면에서 언급 된 ^ A-Kombinations가있는 창의 컨텐츠 만 전환합니다. 그래픽이 아닌 환경에서도 작동합니다.


2

screen많은 정보를 알려주는 상태 표시 줄을 표시 하도록 구성 할 수 있습니다. 현재 화면 창도 가정하지만 상태 표시 줄을 사용하지 않으므로 확실하게 말할 수는 없습니다.

내가 아는 한, screen탭을 만들지 말고 지정한 명령이나 선호하는 Ctrl- A 1, Ctrl- A 2등으로 화면을 전환해야합니다 .

하나 개의 탭 사용할 수있는 많은 것을 가지려면 gnome-terminal화면없이 또한, 기능 : Ctrl- Shift- T새 탭을 생성하며, Alt- 1, Alt- 2, 등 탭 사이를 전환됩니다.

또한 서버에서 화면을 실행하지 않는 이유는 무엇입니까? 따라서 하나의 ssh 연결 만 사용하십시오 (이 경우 탭이 없음).


2

나는 이것이 꽤 오래되었다는 것을 알고 있지만 Google이 나를 여기로 인도했기 때문에 다른 사람들도 이것을 읽을 수 있습니다. 다음은 "스크린"세션 내에서 탭을 모방하기위한 $ 0.02 해킹입니다.

다음을 사용하여 상태 표시 줄을 작성하십시오.

  • 왼쪽 : 날짜 / 시간
  • 오른쪽에 : 로컬 호스트 이름 + 평균로드
  • 중간에 : 화면 "창"의 이름
    • 현재 창 : 검정색 배경에 빨간색 텍스트
    • 다른 창 : 상태 표시 줄 배경색의 흰색 텍스트 (파란색, 여기)

넣다 ~/.screenrc:

hardstatus alwayslastline "%{kb}%{c}[%{w}%D %d/%m/%Y %c:%s%{c}] %{w}%-w%{rk}%n %t%{wb}%+w %=%{c}[%{W}%H %l%{c}]"

(아마도 이것에 상당한 시간을 투자했기 때문에 $ 0.02 이상의 가치가 있습니다. ;-)

F6/ F7키 를 사용하여 현재 창에서 이전 / 다음으로 전환하려면 :

bindkey -k k6 prev
bindkey -k k7 next
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.