Gnome-terminalの新しいプロファイルを作成し、下の画像に示すように、「Implicit」プロファイルと新しく作成したプロファイルを切り替えることができます。
今、コマンドライン/スクリプトを使用して、またはこのショートカットを使用してプロファイルを切り替える方法はありますか?.
注:次のようなソリューション:
gnome-terminal --tab-with-profile=Implicit && exit
プロファイルを変更するこのプロセスでは、別の端末を閉じて開いたり、別の端末ウィンドウを取得したりしないため、除外されます。
「暗黙の」プロファイルに切り替えるには:
xdotool key Alt+t p Return
2番目のプロファイルに切り替えるには:
xdotool key Alt+t p Down Return
xdotool
はデフォルトではUbuntuにインストールされないため、最初にインストールする必要があります。
もちろん、これらのコマンドには カスタムキーボードショートカットの追加 を使用できます。
GUIを使用せずに、ターミナル内でプロファイルを変更できるショートカットはありません(コメントで述べたようにメニューをナビゲートすることなく)。マニュアルを引用( stable 、 development 3.9 ):
現在の[ターミナル]タブまたはウィンドウでプロファイルを変更するには、[ターミナル]▸[プロファイルの変更]からプロファイルを選択します。
( バグトラッカー )で提案として提案できます
すでに多くの素晴らしい答えがありますが、xdotoolを使用して、メニューバーを必要としないを表示するバリエーションをもう1つ追加したいと思います...
キーコンボシフト+ F10キーを押すと、ポップアップメニュー(ターミナルを右クリックするのと同じ)が開き、そこからプロファイルを変更できます。
例えばxdotool key shift+F10 r 3
は3番目のプロファイルを取得します
また、この方法ではxdotoolの遅延を設定する必要がないこともわかりました(メニューバーの方法に必要であることがわかりました)。そのため、少し速くなります。
プロファイルを頻繁に変更する傾向があるため、これを関数にラップします。
function chp(){
xdotool --clearmodifiers key Shift+F10 r $1
}
したがって、chp N
を呼び出して、N番目のプロファイルに切り替えることができます。
私のセットアップのいくつかのヒントと特異性:
chp
コマンドを.bashrcに追加することで、新しいタブを常にデフォルトプロファイルに強制的に切り替えることができます
ホストに基づいてsshセッションを色分けしますが、sshエイリアスで新しいタブまたはウィンドウを開き、sshを終了するときにプロファイルをデフォルトに戻したいとは思いません。私の解決策:alias somehost="chp 2; ssh user@somehost; chp 1"
Xdotoolにフラグ--clearmodifiers
を付けると、修飾キーを保持している場合(タブ/ウィンドウを開くとき、sshを終了するときなど)、xdotoolに干渉しません。
プロファイル名に数字を追加して、新しいプロファイル名を追加しても、プロファイルメニューのアルファベット順になっているために他のすべての名前が移動しないようにします
私も同じことをしようとしていましたが、ついにスクリプトが機能するようになり、それを GitHub に配置しました。
README.mdで説明したように、実際には切り替わりませんが、プロファイル構成をデフォルトプロファイルにロードします。これを行うために、各プロファイルの構成は、スクリプトの最初の実行時にファイルに保存されます。このスクリプトにより、プロファイルを切り替えているように見えますが、これで十分です。それが誰にも役立つことを願っています...
頻繁にアクセスするサーバーのリストがある場合、最も簡単な解決策は、そのボックスのセッションのためだけに2番目のウィンドウを呼び出すことです。
最初に、頻繁に使用するリモートロケーションごとに個別のgnome-terminalプロファイルを作成します。次に、各プロファイルで、端末がプレーンシェルではなく、そのボックスに対してSSHログインコマンドを実行するように指定します。
ssh alice@athena
最後に、プロファイルIDを指定して新しいリモートウィンドウを開始する短いスクリプトを作成します。
#!/bin/bash
if [[ $# -ne 1 ]] ; then
echo "Give me a server/profile name!"
exit 1
fi
gnome-terminal --window-with-profile=$1
exit 0
この戦略を使用すると、各ボックスのターミナルウィンドウの外観を「無限に」変更でき、単一の「コントロール」ターミナルからキックオフできます。たとえば、このスクリプトを「rlv」と呼ぶと、プロファイル名でスクリプトを呼び出すだけでリモートウィンドウを生成できます。
>> rlv athena
ホスト名を太らせたり、そのホストのプロファイルを設定し忘れたりした場合、ローカルボックスに別のデフォルトプロファイルウィンドウが表示されます。これを回避するために、gnome-terminalではなくスクリプト自体にログインすることで、スクリプトをコーディングする方法があります。
#!/bin/bash
if [[ $# -ne 1 ]] ; then
echo "Give me a server/profile name!"
exit 1
fi
gnome-terminal --window-with-profile=$1 -e "ssh $1"
exit 0
...しかし、そのボックスのログインユーザー名を定義する柔軟性が失われます。スクリプトの追加機能は、読者への演習として残します。
目的によっては、このスクリプトが役立つ場合があります。 https://github.com/xyrix/gnome-terminal-profile-switcher
ある種のモンキーパッチを実行し、各ターミナルの新しいプロファイルを生成し、いくつかの環境変数を設定して、現在のターミナルのプロファイルのテーマを切り替えるためのプログラムを公開します。
Safe_sshスクリプトの例が物事を明確にすることを願っています:-)。私はもう1年以上使っていますが、会社のライブデータベースを破壊することはありませんでした^ _ ^
私は、元の解決策が既に質問で拒否されていることに気づきました。プロファイルを変更する簡単な方法はないようですが、setterm
コマンドを使用して背景/前景色を変更できます。
したがって、このsetterm -term linux -background black -foreground green
は、黒い背景に緑色のテキストを表示します。唯一の問題は、lsの出力が色付けされているため、lsの色付けをオフにしたい場合があることです。それ以外の場合は、以前の配色にリセットされます
元の投稿:回避策があります。 man gnome-terminalから:
--window-with-profile = PROFILENAME
Open a new window containing a tab with the given profile. More than one of these options can be provided.
これが私のマシンの例です。 3つのプロファイルがあります:B&G(緑に黒)、ForPrinting(黒のフォント、白の背景)、およびデフォルト。だから私は、現在のウィンドウタイプでgnome-terminal --window-with-profile=ForPrinting
と入力します。その後、コマンドラインから古いウィンドウを強制終了するか、切り替えてグラフィカルに閉じることができます。
B&Gプロファイルが機能しません。おそらく&が有効な文字ではないため、プロファイルに名前を付けるときはそのことに留意してください。
Gnome-terminalが提供する「次のプロファイル」コマンドとショートカットは素晴らしいでしょう。残念ながら、そうではありません。
Alt+T
が無効になっている([編集]> [設定]> [ニーモニックを有効にする-チェックなし])場合の回避策はF10 left left down right
で、プロファイルを選択します。痛い。
私が使用してしまった非常にveryい解決策は
unset x y
eval $(xwininfo -id $(xdotool getactivewindow) |
sed -n -e 's/^ \+Absolute upper-left X: \+\([0-9]\+\).*/x=\1/p' \
-e 's/^ \+Absolute upper-left Y: \+\([0-9]\+\).*/y=\1/p')
xdotool mousemove $(($x + 50)) $(($y + 50))
xdotool click 3; xdotool key --repeat 3 Up; xdotool key Right; xdotool key --delay 50 Down; xdotool key --delay 50 Return
(これにより、2番目のプロファイルが選択されますが、2番目の「キーダウン」コマンドをxdotool key --delay 50 --repeat 2 Down
に変更することにより、htirプロファイルを言うように変更できます。
これは何をしているのですか:
Xdotoolをインストールする必要がありますSudo apt install xdotool
。
ターミナル自体がターミナルを介した設定を許可しないという種類の異常です!