まくまくWindowsノート
コマンドプロンプトからウィンドウサイズを変更する
2018-05-23

コマンドでコマンドプロンプトのサイズを変更する

コマンドプロンプト上で MODE コマンドを使用すると、ウィンドウサイズを簡単に変更することができます。 コマンドプロンプトを右クリックして、「プロパティ」ウィンドウを開いて設定するよりも、圧倒的に早く設定できます。

例: コマンドプロンプトのウィンドウサイズを 100 x 10 に変更

C:\> mode 100,10

ちなみに、上記は下記のショートカットです。

C:\> mode con: cols=100 lines=10

大きすぎる値を指定した場合は、可能な限りのサイズに広げてくれます。 例えば、次のようにすると、横幅が最大になります。

例: コマンドプロンプトのウィンドウの横幅を最大にまで広げる

C:\> mode 1000

ウィンドウサイズを変更するコマンドをバッチファイルの中に組み込んでしまえば、最適なウィンドウに変更した状態でバッチ処理を進めることができますね。

コマンドでバッファサイズだけ大きくする

mode コマンドを使用すると、簡単にコマンドプロンプトのウィンドウサイズを変更することができるのですが、バッファサイズまで同じサイズに変更されてしまいます。 例えば、

C:\> mode 100,10

とすると、ウィンドウサイズは 100x10 に変更されるのですが、バッファサイズまで 10 行分に減ってしまいます(つまり、まったくスクロールできなくなる)。 残念なことに、mode コマンドではバッファサイズを保ったままウィンドウサイズを変更することができないようです。

シンプルな解決方法ではないのですが、powershell コマンドを使えば、バッファサイズだけを変更することができます。 下記のバッチファイルでは、mode コマンドでウィンドウサイズを 100x10 に縮小した後で、powershell コマンドでバッファサイズを 3000 行分に設定しています。

sample.bat(ウィンドウサイズを 100x10、バッファサイズを 3000 に変更)

mode 100,10
powershell -command "&{$h=Get-Host;$w=$h.UI.RawUI;$s=$w.BufferSize;$s.height=3000;$w.BufferSize=$s;}"
2018-05-23