ターミナルコマンドでターミナルウィンドウのサイズを変更できますか?


38

そのため、ターミナル内から特定のサイズにウィンドウのサイズを変更できました。

回答:


58

はい。ターミナルは、サイズと位置、階層化、最小化など、ウィンドウを操作するためのエスケープシーケンスをサポートしています。寸法は、ピクセルまたは文字で表現できます。詳細については、Xtermコントロールシーケンスを参照してください(「ウィンドウ操作」を検索してください。表記に慣れていない場合、「CSI」は「Control Sequence Introducer」の略ですESC [)。

たとえば、次のシェルコマンドはウィンドウを100x50文字に設定します。

printf '\e[8;50;100t'

ウィンドウを数秒間最小化し、復元します。

printf '\e[2t' && sleep 3 && printf '\e[1t'

ウィンドウをディスプレイの左上隅に移動します。

printf '\e[3;0;0t'

ウィンドウをズームします。

printf '\e[9;1t'

ウィンドウを前面に移動します(キーボードフォーカスを変更せずに)。

printf '\e[5t'

ターミナルエミュレーターでの制御シーケンスの有効化

一部のターミナルエミュレータは、これらの制御シーケンスをデフォルトで無視し、それらを有効にするための設定が必要です。

XTermでこれらを有効にするには、次のリソースをtrueに設定します。

allowWindowOps

iTerm2でこれらを有効にするには、次の設定を選択解除します。

設定>プロファイル> [プロファイル]>ターミナル>セッション開始ウィンドウのサイズ変更を無効にする


これは完璧です!
LopSae

2
これからはあなたは私の神です!
d12frosted

2
これはiterm2でヨセミテに動作するようには思えない
Jistanidiot

これはうまく機能しますが、Terminalはウィンドウが画面上で部分的にしか見えないようなサイズ変更を受け入れないようです。printf '\ e [8; 100; 100t'を試してみましたが、これは79x100に切り捨てられました。私の問題は、画面の制限を超えてターミナルを拡大するこの場合にのみマウスをバイパスする必要があることです
...-phs

1
これはiTerm2でも機能します。
TextGeek

10

常にAppleScriptを使用できます。

setwidth() { osascript -e "tell app \"Terminal\" to tell window 1
set b to bounds
set item 3 of b to (item 1 of b) + $1
set bounds to b
end"; }

これは、現在アクティブな端末ウィンドウ/タブでのみ機能します。これを確実に機能させるには、現在のttyデバイスのパス名を取得し、一致する端末タブを見つけます。
クリスページ


10

を使用し/usr/X11/bin/resizeます。

resize -s 30 80 30行80列になります。

resize -s 30 0 30行と完全な列が表示されます。

resize -s 0 80 行全体と80列が表示されます。


1
このソリューションはMacOSに限定されません。端末ベースであるため、すべての端末で動作するはずです。これを使用して、TERM = xtermでbashシェルを実行しているWindowsでPuTTYウィンドウのサイズを変更します。
DrStrangepork 14

4
これは、iterm2のYosemiteでは機能しないようです。
ジスタニディオット

これはApple Terminalで機能しますが、iTerm2では機能しません。ただし、エスケープシーケンス\ e [8; 24; 80tを送信すると、両方で機能します。
TextGeek

1
@KrishenGreenwell iTerm2のドキュメントを参照してください。デフォルトでは、これらの制御シーケンスは無視されます。それらを無視するかどうかを制御する設定があります。
クリスページ

1
このソリューションは以前は機能していましたが、X11コマンドはなくなったと思います。X11をインストールすることでインストールできるかもしれませんが、resizeコマンドを実行するためだけにX11をインストールしたくありません。
ガブリエル

-2

実際、マウスを使用してサイズ変更ウィンドウを移動するのは恐ろしく遅いです。

私はこのアプリSizeUpを非常に長い間使用しています。基本的に、キーボードコマンドを使用して、アプリケーションウィンドウのサイズを変更します。

以下を行うことができます(以下のカスタムキーボードコマンド)。

  • ウィンドウをフルスクリーンにする(control+ option+ command+ m
  • ウィンドウを1/2画面サイズだけ左または右に移動します(control+ option+ command+ /
  • ウィンドウを画面の1/4画面サイズに移動します(control+ option+ shift+ / / /
  • 画面間でウィンドウを移動する
  • スペース間でウィンドウを移動する

これでうまくいくと思うし、他のウィンドウ管理にも役立つと思う。


便利ではありますが、これは質問者が尋ねた質問には対応していません。
アンドリューフェリエ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.