SETTERM(1)

名前
setterm - 端末の属性を設定する

書式
setterm [options]

説明
setterm は、指定された端末機能 (terminal capabilities) を呼び出すための文字列を標準出力に出力する。 その際、使用すべき文字列を見つけるために、 可能なかぎり terminfo を参照する。もっとも、一部のオプション (以下で「仮想コンソール専用」と断り書きがあるもの) は、terminfo(5) にある機能と対応していない。その場合は、端末のタイプが "con" か "linux" ならば、指定された機能を PC Minix の仮想コンソールドライバで呼び出すための文字列を出力する。 端末に実装されていないオプションは、無視する。

オプション
引き数にブール値 (on または off) を取るオプションは、デフォルトでは on になっている (訳注: 現在では、デフォルトが on のものも off のものもある。たとえば、--bold のデフォルトは、たぶん off である)。

以下で 8-color と書いてあるところには、black, red, green, yellow, blue, magenta, cyan, white が使える。

16-color と書いてあるところには、8-color と grey、それに bright を前に付けた red, green, yellow, blue, magenta, cyan, white が使える。

様々なカラーオプションは、少なくとも仮想端末では、それぞれ独立して設定できる。 ただし、複数のモード (たとえば、--underline と --half-bright) を同時に設定したときの結果は、ハードウェア次第である。

指定するかしないかが任意の引き数では、オプションと引き数の間にスペースではなく、'=' (等号) が必要である。たとえば、--option=argument のように (訳注：実際のところ、util-linux 2.36 では、--clear のような例外もあるが、たいていの場合スペースも使える)。

--appcursorkeys on|off
    カーソルキーアプリケーションモードを on または off にする。on の場合は、カーソルキーを押したとき、ESC [ A, ESC [ B などの代わりに、ESC O A, ESC O B などが送出される。それが vi ユーザーに対して引き起こしかねない問題については、Text-Terminal-HOWTO の「vi and Cursor-Keys」セクションをご覧いただきたい。仮想コンソール専用。

--append console_number
    --dump と似ているが、既存のスナップショットファイルを上書きせず、その末尾に追記する。 --dump オプションが指定されていない場合にのみ効果がある。

--background 8-color|default
    テキストの背景色を設定する。

--blank[=0-60|force|poke]
    スクリーンが自動的に消灯されるまでの無活動時間を分単位で指定する (自動消灯には、使用できれば APM を使用する)。引き数を指定しない場合は、消灯状態を返す (どの vt が消灯されたかを返す。消灯されていない vt については、0 を返す)。仮想コンソール専用。

    引き数 force は、キーが押されても、スクリーンを消灯したままにする。 (訳注: --blank=force を指定すると、仮想コンソールは即座に消灯する。 そして、どのキーを押しても消灯は解除されない。)

    引き数 poke は、スクリーンの消灯を解除する。(訳注: --blank=force で消灯したとき、それを解除するのに setterm --blank=poke を使用する。)

    [訳注]
        --blank に引き数を付けなかったときの動作がよく分からない。 訳者のところでは、消灯しているはずの仮想コンソールが他にあっても、その番号を示さず、常に 0 が返ってくる。1 つのコンピュータに複数の端末がつながっていた時代の話なのだろうか。 つまり、vt とは、virtual terminal ではなく、video terminal のことなのか。

--bfreq[=number]
    ベルの周波数をヘルツ (Hz) で指定する。引き数が指定されていない場合は、デフォルトの 0 になる。仮想コンソール専用。

--blength[=0-2000]
    ベルの継続時間をミリ秒単位で設定する。引き数が指定されていない場合は、デフォルトの 0 になる。仮想コンソール専用。

--blink on|off
    点滅モードを on または off にする。 仮想コンソール以外では、--blink off にすると、(太字・半輝度・点滅・反転といった) 全ての属性が off になる。

--bold on|off
    太字 (高輝度) モードを on または off にする。仮想コンソール以外では、--bold off にすると (太字・半輝度・点滅・反転といった) 全ての属性が off になる。

--clear[=all|rest]
    引き数なし、または引き数 all が指定された場合は、clear(1) コマンドとまったく同じように、スクリーン全体をクリアしてカーソルをホームポジションに移動する。 引き数 rest が指定された場合は、現在のカーソル位置からスクリーンの最下行までをクリアする。

--clrtabs[=tab1 tab2 tab3 ...]
    指定された水平方向のカーソル位置にあるタブストップを解除する。範囲は 1-160 である。引き数が指定されない場合は、全てのタブストップを解除する。仮想コンソール専用。

--cursor on|off
    端末のカーソルを on または off にする。

--default
    端末のレンダリングオプションをデフォルト値に戻す。

--dump[=console_number]
    番号で指定された仮想コンソールのスナップショットを --file オプションで指定されたファイルに書き出す。ファイルの内容は上書きされる。 デフォルトのファイルは screen.dump である。引き数が指定されない場合は、現在使用中の仮想コンソールをダンプする。 このオプションは、--append を無効にする。

--file filename
    同じコマンドライン上に --dump や --append オプションがある場合に、それに使うスナップショットファイルの名前を設定する。 このオプションが指定されない場合、デフォルトのファイル名はカレントディレクトリの screen.dump である。システムの規定する長さの上限を越えたパス名は、切り詰められる。 linux/limits.h の PATH_MAX の値を参照すること。

--foreground 8-color|default
    テキストの前景色を設定する。

--half-bright on|off
    減光 (半輝度) モードを on または off にする。仮想コンソール以外では、--half-bright off にすると、(太字・半輝度・点滅・反転といった) 全ての属性が off になる。

--hbcolor [bright] 16-color
    半輝度の文字の色を設定する (訳注: 減光する代わりに、色を変更する端末で使用)。

--initialize
    端末の初期化文字列を出力する。 通常、それは、端末のレンダリングオプションを設定し、その他の属性をデフォルトの値にする。

--inversescreen on|off
    スクリーン全体で前景色と背景色を入れ換える。

--linewrap on|off
    行がいっぱいになったとき、端末上の表示を次の行に続けるか否かを設定する。

--msg on|off
    カーネルの printk() によるメッセージをコンソールに送出するか否かを設定する。仮想コンソール専用。

    [訳注]
        コンソール出力の閾値であるロギングレベルが、現在いくつに設定されているかを知るには、 cat /proc/sys/kernel/printk を実行すればよい。 その出力の一番左側の数値が現在のロギングレベルである。 各数値の意味については、syslog(2) に説明がある。次の項目 --msglevel も参照。

--msglevel 0-8
    カーネルの printk() によるメッセージに対する、コンソールのロギングレベルを設定する。 ここで設定したレベルよりも高い重大度を持つ (等しいレベルは含まない) 全てのメッセージが、コンソールに表示されることになる (訳注: レベルの数値が小さいほど、重大度は高い)。 従って、ロギングレベルを 8 に設定すると、全てのカーネルメッセージが表示される。 なお、ロギングレベル 0 は --msg on と同じ効果がある。カーネルメッセージのロギングのインターフェースとしては、 klogd(8) の方が使いやすいかもしれない。

    仮想コンソール専用。

    [訳注]
        ロギングレベルは、0 から 7 まであり、それぞれ emerg, alert, crit, err, warning, notice, info, debug という重大度に対応する。詳しくは、syslog(2) の The log level セクションなどを参照していただきたい。

--powerdown[=0-60]
    VESA パワーダウンまでの時間を分単位で設定する。引き数を指定しない場合は、デフォルトの 0 になる (すなわち、パワーダウンを行わない)。この時間が経過すると、 コンソールが消灯している場合は vsync サスペンドモードになり、モニタがサスペンドモードの場合はパワーダウンモードになる。

--powersave mode
    以下の値が mode に指定できる。

    vsync|on
        モニタを VESA vsync サスペンドモードにする。

    hsync
        モニタを VESA hsync サスペンドモードにする。

    powerdown
        モニタを VESA パワーダウンモードにする。

    off モニタの VESA パワーセーブ機能を off にする。

--regtabs[=1-160]
    全てのタブストップを解除して、通常のタブストップパターンを設定する。 タブ位置は、指定した数値ごとに置かれる。引き数を指定しない場合は、デフォルトの 8 が使用される。仮想コンソール専用。

--repeat on|off
    キーボードリピートを on または off にする。仮想コンソール専用。

--reset
    端末リセット文字列を出力する。通常、それは、端末を起動時の状態にリセットする。

--resize
    行と列の最大の大きさを見積もって、端末のサイズをリセットする。 これは、実際の大きさとカーネルの端末ドライバーがうまく噛み合っていないとき、役に立つ。 特筆すべき使用例は、シリアルコンソールの場合だ。そこでは ioctl(3p) を使わず、バイトストリームとブレークのみを使用しているのである。

--reverse on|off
    ビデオの反転モードを on または off にする。仮想コンソール以外では、--reverse off にすると、(太字・半輝度・点滅・反転といった) 全ての属性が off になる。

--store
    端末の現在のレンダリングオプション (前景色と背景色) を、デフォルトにリセットする際に使用する値として保存する。仮想コンソール専用。

--tabs[=tab1 tab2 tab3 ...]
    指定された水平方向のカーソル位置にタブストップを設定する。範囲は 1-160 である。引き数を指定しない場合は、現在のタブストップの設定を表示する。

--term terminal_name
    環境変数 TERM を上書きする。

--ulcolor [bright] 16-color
    下線を引かれる文字の色を設定する (訳注: 下線を引く代わりに、色を変更する端末で使用)。仮想コンソール専用。

--underline on|off
    下線モードを on または off にする。

--version
    バージョン情報を表示して終了する。

--help
    ヘルプを表示して終了する。

互換性
バージョン 2.25 以来、setterm は、昔からのハイフン 1 つの長いオプション (たとえば -help) に加えて、ハイフン 2 つの長いオプション (たとえば --help) をサポートしている。スクリプト内では、後方互換のため、ハイフン 2 つよりハイフン 1 つを使う方がよい。現在のところ、ハイフン 1 つの互換性を止める計画はなく、またそうする正当な理由もない。

バグ
Minix 版と Linux 版の違いが、この文書には書かれていない。

関連項目
stty(1), tput(1), tty(4), terminfo(5)

入手方法
この setterm コマンドは、util-linux パッケージの一部であり、Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/> から入手できる。