當前位置: 首頁>>技術問答>>正文


保存和恢複終端標簽的一些快速方法?

, , , ,

問題描述

我有一個終端窗口,打開了十幾個命名選項卡。

我想保存當前配置並使用名稱和目錄進行恢複。

有沒有辦法做到這一點?

最佳解決思路

要將配置保存到/tmp/cfg

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

要加載它:

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

UPDATE

在使用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 

次佳解決思路

另一種方法是使用Byobu。按F2打開其中的新端子。使用F3和F4在端子之間切換左右。

隨時關閉GUI窗口。當你重新打開Byobu時,所有的終端都恢複了:)

第三種解決思路

恢複保存的設置後,我嘗試了以下選項,並且還正確恢複了標題。

  1. 轉到設置 – >配置文件,然後選擇您正在使用的當前配置文件

  2. 單擊編輯並轉到“標題和命令”選項卡

  3. 將初始標題設為空白

  4. 在下麵的下拉框中選擇“保留初始標題”選項。

此選項可以避免覆蓋您的初始標題集。

希望這有助於一個偉大的劇本。每次重新啟動都可以節省大量時間,我可以愉快地重新啟動虛擬機。

謝謝!!

第四種思路

我又嘗了一個選擇,

我更改了終端的默認標題以使用~/.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時,將正確恢複所有選項卡名稱。您也可以根據需要進行更改並再次保存標簽!

第五種思路

我找到了一種方法,我認為它更快。

  1. 像Yoga所說的那樣創建一個標題和名稱的個人資料。

  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 &'

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/1090.html,未經允許,請勿轉載。