MODE(ウィンドウサイズ・キー入力設定)
長い出力を見やすく表示したいときや、バッチファイルの実行画面の大きさをそろえたいときに、コマンドプロンプトのウィンドウサイズを変更したい場面があります。
MODE コマンドは、コンソール(コマンドプロンプトの画面)の桁数・行数や、キーを押し続けたときの入力速度などのデバイス設定を表示・変更するコマンドです。
現在の設定を確認する
mode con と入力すると、コンソールの現在の状態が表示されます。con は「コンソール」を表すデバイス名です。
mode con
表示内容や数値は、環境によって異なります。
ウィンドウサイズを変更する
MODE CON: COLS=桁数 LINES=行数
使用例
幅 100 桁、高さ 30 行にします。
mode con: cols=100 lines=30

中小企業経営者のためのRPA入門 RPA導入を成功させる方法

60分でわかる! AIエージェント 超入門

コマンドラインの黒い画面が怖いんです。

知識・才能ゼロでもらく~に月10万円稼ぐ! よくわかるAI副業超入門
COLS と LINES は、どちらか片方だけを指定することもできます。
mode con: lines=40
また、桁数と行数をカンマで区切る短縮形もあります。
mode 100,30
従来のコンソールウィンドウ(conhost)では、mode con でサイズを変更すると、画面バッファ(過去の出力を保持する領域)もウィンドウと同じ大きさになります。その結果、スクロールバーが表示されなくなり、はみ出した過去の出力はさかのぼって見られなくなります。
Windows 11 22H2 以降で既定のターミナルとなる Windows Terminal では、mode con を実行してもウィンドウの大きさ自体は変わらない場合があります。その場合は、ウィンドウをマウスで広げるか、ターミナルの設定を変更してください。ウィンドウサイズを指定できるのは、主に従来のコンソールウィンドウ(conhost)です。
モニターの解像度やフォントサイズより大きな値を指定すると、エラーになったり、期待した大きさにならなかったりします。そのような場合は、小さめの値から試してください。
バッチファイルの先頭でサイズを固定する
バッチファイルの冒頭に書いておくと、実行するたびに同じ大きさの画面で処理を始められます。
@echo off
mode con: cols=80 lines=25
cls
echo ==============================
echo メニュー
echo ==============================
echo 1. バックアップ
echo 2. クリーンアップ
echo ==============================
pause
サイズ変更後に cls を実行しておくと、画面がきれいな状態から表示を始められます。
色とタイトルもあわせて設定すると、実行中のバッチファイルが見分けやすくなります。詳しくは color / title の記事を参照してください。
キーの入力速度を調整する
mode con では、キーを押し続けたときの文字の連続入力(リピート)の速度も設定できます。
MODE CON: RATE=速度 DELAY=遅延時間
| 項目 | 説明 |
|---|---|
RATE | 文字が連続入力される速度。1〜32 の範囲で指定し、数値が大きいほど速い |
DELAY | 連続入力が始まるまでの待ち時間。1〜4 の範囲で、1 が 0.25 秒、4 が 1 秒 |
RATE と DELAY は、必ず両方を同時に指定します。
mode con: rate=31 delay=1
文字コードを確認する
mode con cp /status を実行すると、現在のコードページ(文字コード)を確認できます。
mode con cp /status
コードページの変更には CHCP コマンドを使うのが一般的です。詳しくは CHCP の記事を参照してください。
うまく反映されないときは
| 症状 | 主な原因と対処 |
|---|---|
| ウィンドウの大きさが変わらない | Windows Terminal で実行している。設定から変更するか、conhost で試す |
| エラーになる | 値がモニターやフォントに対して大きすぎる。小さな値から試す |
RATE だけを指定してエラーになった | RATE と DELAY はセットで指定する |
MODE には、ここで紹介したコンソールのほかに、シリアルポート(COM1 など)やプリンターポート(LPT1 など)の通信設定を行う機能もあります。ただし、現在では使う機会は多くありません。
まとめ
| 操作 | コマンド |
|---|---|
| 現在のコンソール設定を表示 | mode con |
| 桁数と行数を指定 | mode con: cols=100 lines=30 |
| 短縮形で指定 | mode 100,30 |
| 行数だけを変更 | mode con: lines=40 |
| キーリピート速度を設定 | mode con: rate=31 delay=1 |
| コードページを確認 | mode con cp /status |