터미널의 탭을 저장하고 복원하는 가장 빠른 방법은 무엇입니까?


80

12 개의 이름이 지정된 탭이 열린 터미널 창이 있습니다.

현재 구성을 저장하고 이름과 디렉토리로 복원하고 싶습니다.

이것을 할 수있는 방법이 있습니까?


매우 흥미로운 기능이지만 사용할 수 있다고 생각하지 않습니다.
dlin

어떤 터미널 응용 프로그램을 사용하고 있습니까? 그놈 터미널? 콘솔? 등
gertvdijk

@gertvdijk : "터미널"이라는 것. 나는 그것이 그놈이라고 믿는다.
false

1
@false Btw., Xfce won "터미널"이라고합니다. 관심있는 사람은 Xfce Goodies , projects : applications : terminal :)에 문서화되어 있습니다.
Nostromov

2
이를 가능하게하기 위해 bugzilla.gnome.org/show_bug.cgi?id=623986
Marius Andreiana

답변:


44

구성을 /tmp/cfg다음으로 저장하려면

gnome-terminal --save-config=/tmp/cfg

다시로드하려면 :

gnome-terminal --load-config=/tmp/cfg 

최신 정보

bash로 놀아 본 후 탭 이름을 파일 /tmp/test로 저장하는 다음 스크립트를 만들었습니다 .

#!/usr/bin/env bash

gnome-terminal --save-config=/tmp/test

LINES=($(grep -n '\[Terminal' /tmp/test | cut -d: -f1))
for ((i=0; i<$(grep '\[Terminal' /tmp/test | wc -l); i++))
do
    TITLE=$(xprop -id $WINDOWID WM_NAME | sed -e 's/WM_NAME(STRING) = "//' -e 's/"$//';xdotool key ctrl+Page_Down;)
    sed -ri "$((${LINES[$i]}+$i))s/.*/&\nTitle=$TITLE/" /tmp/test 
done

이름을 올바르게 지정하려면 터미널의 첫 번째 탭에서 이름을 실행해야합니다. 이전과 동일하게로드 :

gnome-terminal --load-config=/tmp/test

설명:

다음을 사용하여 탭 이름을 얻을 수 있습니다.

xprop -id $WINDOWID WM_NAME

다음을 사용하여 다음 탭으로 이동할 수 있습니다.

xdotool key ctrl+Page_Down;

이전에 저장 한 구성 파일을 가져온 후 여러 개의 탭이 표시됩니다.

$(grep '\[Terminal' /tmp/test | wc -l)

루프 내부의 탭을 반복 할 수 있습니다. 이전에 저장된 파일의 각 탭 구성 섹션에 대해 "Title = titlename"항목을 추가해야합니다. 그렇게하려면 먼저 줄을 추가 할 줄 번호 배열을 만듭니다.

LINES=($(grep -n '\[Terminal' /tmp/test | cut -d: -f1))

루프를 반복하는 탭 안에 "Title = titlename"줄을 추가하고 있습니다.

sed -ri "$((${LINES[$i]}+$i))s/.*/&\nTitle=$TITLE/" /tmp/test 

1
화면 명령을 살펴볼 수 있습니다. 나는 그것을 사용하지 않지만 모든 종류의 세션, 심지어 원격 세션을 저장하고 복원 할 수 있다고 생각합니다.
Joe

1
타이틀이 작동하지 않습니까? 제목 문제에 도움이 희망 '초기 TITLE 보관'터미널 명령은 자신의 타이틀을 설정하면 메뉴 편집 \ 프로필 환경 설정에서 탭 '제목 및 명령' '있는지 확인
지각

1
이 답변의 의도 된 동작은 무엇입니까? 나에게 탭을 저장하고 현재 작업 디렉토리를 믿습니다. 그러나 이전 입력 및 출력은 저장하지 않습니다. OS X 터미널이 그렇게합니다.
Tyler Collier

11
gnome 3.18 :이 버전의 gnome-terminal에서는 "--save-config"옵션이 더 이상 지원되지 않습니다.
Marius Andreiana

2
Ubuntu 16.04 :이 버전의 gnome-terminal에서는 옵션 "--save-config"가 더 이상 지원되지 않습니다.
유진 Kulabuhov

12

대안은 Byobu를 사용하는 입니다. 내부에 새 터미널을 열려면 F2를 누르십시오. F3 및 F4를 사용하여 터미널 간 좌우를 전환하십시오.

언제든지 GUI 창을 닫으십시오. Byobu를 다시 열면 모든 터미널이 복원됩니다. :)


1
다시 부팅해도 작동합니까? 나를 위해, 그것은 재부팅 후 다시 재설정됩니다.
akshay2000

3
재부팅
후에

1
여기에서 모든 탭을 다시 열지 않고 첫 번째 탭만 다시여십시오.
Leonardo Castro

3
재부팅 후에도 작동하지 않는 이유는 무엇입니까?
killjoy

3

저장된 설정을 복원 한 후 아래 옵션을 시도했는데 제목도 제대로 복원되었습니다.

  1. 설정-> 프로파일로 이동하여 사용중인 현재 프로파일을 선택하십시오.
  2. 편집을 클릭하고 "제목 및 명령"탭으로 이동
  3. 초기 제목 비우기
  4. 아래 드롭 다운 상자에서 "초기 제목 유지"옵션을 선택하십시오.

이 옵션은 초기 타이틀 세트를 덮어 쓰지 않도록합니다.

희망 이것은 실제로 도움이되고 대본이됩니다. 재부팅 할 때마다 많은 시간을 절약하고 가상 상자를 자주 재부팅 할 수 있습니다.

감사!!


3

나는 하나 더 옵션을 시도

설정을 ~/.bashrc변경하지 않고 터미널의 기본 값을 Intital 값을 사용하도록 변경했습니다 ~/.profile.

# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
    PS1="$PS1"
    ;;
*)
    ;;
esac

이렇게하면 터미널 프로필을 변경할 필요가 없습니다.
실행하면 gnome-terminal --load-config모든 탭 이름이 올바르게 복원됩니다. 또한 원하는대로 변경하고 탭을 다시 저장할 수 있습니다 !!


3

더 빠르다고 생각하는 방법을 찾았습니다.

  1. 요가가 말한 것처럼 제목과 이름으로 프로필을 만듭니다.
  2. 유형:

    gnome-terminal --tab-with-profile=PROFILENAME1 --tab-with-profile=PROFILENAME2 ... --tab-with-profile=PROFILENAME999
    

이 명령으로 별칭을 만들었고 꽤 잘 작동했습니다. 입력 만하면 workflow터미널에 3 개의 탭과 탭에 배치 된 프로필 정의에서 선택한 제목이 나타납니다.

.bashrc파일에 다음을 배치했습니다.

alias workflow='gnome-terminal --tab-with-profile=Git --tab-with-profile=Run | sublime-text &'

1

Screen 또는 Byobu는 터미널에서 복잡한 워크 플로를 관리하는 데 선호하는 방법이며 둘 다 구성을 저장할 수 있습니다.


1

시스템에 설치된 xdotool을 확인하고 경로 변경을위한 변수를 추가하는 기존 스크립트의 약간의 개선

#!/bin/bash

SAVEPATH=/tmp/termprofile

if [ ! -f /usr/bin/xdotool ]; then
        echo "please install 'xdotool'"
        exit 1
fi

gnome-terminal --save-config=$SAVEPATH

LINES=($(grep -n '\[Terminal' $SAVEPATH | cut -d: -f1))
for ((i=0; i<$(grep '\[Terminal' $SAVEPATH | wc -l); i++))
do
    TITLE=$(xprop -id $WINDOWID WM_NAME | sed -e 's/WM_NAME(STRING) = "//' -e 's/"$//';xdotool key ctrl+Page_Down;)
    sed -ri "$((${LINES[$i]}+$i))s/.*/&\nTitle=$TITLE/" $SAVEPATH
done

1

위의 Nyakin의 답변을 확장하면이 스크립트는 여러 창 및 탭 구성에서 작동하며 탭 제목이있는 모든 탭의 탭 제목을 올바르게 저장합니다.

이것은 현재 gnome-terminal 3.2에서 테스트되었지만 유사한 저장 구성 기능을 가진 모든 터미널 프로그램에 대해 구성 될 수 있습니다.

이를 위해서는 'xprop', 'xdotool'및 'wmctrl'도구가 필요합니다.

암호:

#!/usr/bin/env bash

FILE="$1"
gnome-terminal --save-config=$FILE

WINDOWLINES=$(wmctrl -lx | grep gnome-terminal.Gnome-terminal)
WINDOWNUM=$(echo "$WINDOWLINES" | wc -l)
TABLISTS=$(grep "^Terminals" $FILE)

for ((i=1; i<=$WINDOWNUM; i++))
do
    WINDOWLINE=$(echo "$WINDOWLINES" | sed -n "$i{p;q}")
    WINDOW_ID=$(echo "$WINDOWLINE" | cut -d' ' -f1)
    #Switch to window
    wmctrl -i -a $WINDOW_ID

    LINE=$(echo "$TABLISTS" | sed -n "$i{p;q}"); LINE=${LINE#Terminals=}
    TERMINALNUM=$(echo "$LINE" | grep -o ';' | wc -l)
    #go to first tab of the window if more than 1
    [ $TERMINALNUM -gt 1 ] && xdotool key alt+1 && sleep .1

    for tab in ${LINE//;/ }
    do
        #Get the current tab title
        TITLE=$(xprop -id $WINDOW_ID WM_NAME | sed -e 's/WM_NAME(STRING) = "//' -e 's/"$//')
        #Insert it into the config file
        [ "$TITLE" == "${TITLE//WM_NAME/}" ] && sed -ri "/\[${tab}\]/aTitle=${TITLE}" $FILE
        #Move to the next tab in the window
        xdotool key ctrl+Page_Down
    done
done

1

또한 Gnome 터미널에서 해당 기능을 찾았지만 찾을 수 없었습니다. 지금까지 찾은 가장 좋은 방법은 곤솔을 사용하는 것입니다. 북마크 메뉴에서 탭을 선택하여 탭으로 돌아갈 수 있도록 탭을 북마크 할 수 있습니다. 이게 도움이 되길 바란다.



0

Yoga의 방법과 유사하게 편집 >> 프로필 환경 설정 >> 제목 및 명령 >> 제목 >> 터미널 명령이 고유 한 제목을 설정하는 경우 >> " 초기 제목 앞에 "

그런 다음 gnome-terminals --save-config = terminals-cfg를 실행하십시오.

터미널 창 닫기

새 터미널을 열고 실행합니다 : gnome-terminals --load-config = terminals-cfg

모든 타이틀을 유지하면서 저에게 효과적입니다.


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