termios.h ファイル

目的

termios ファイルの構造を定義します。このファイルは、 POSIX 互換性のための端末インターフェースを提供します。

説明

/usr/include/termios.h ファイルには、端末ファイルに適用されるサブルーチンによって使用される情報が入っています。 このファイル内の定義、値、および構造体は、 POSIX 標準との互換性のために必要です。 termios.h ファイルは、ioctl モデム制御操作もサポートします。

一般的な端末インターフェース情報は、 termio.h ファイルに入っています。 termio.h ファイル内の termio 構造体は、基本入力モード、出力モード、制御モード、および伝送制御モードを定義します。 呼び出し側プログラムが POSIX 互換性を必要とするものとして識別されると、 termios 構造体と、 termios.h ファイル内の追加の POSIX 制御パケット情報がインプリメントされます。 ウィンドウ・サイズおよび端末サイズの操作では、 ioctl.h ファイルに定義されている winsize 構造体を使用します。 termios.h ファイルの termios 構造体には、以下のフィールドが含まれています。

  • c_iflag
  • c_oflag
  • c_cflag
  • c_lflag
  • c_cc

tcsetattr サブルーチンの以下のパラメーターについては、 termios.h ファイル 値を定義します も参照してください。

  • OptionalActions
  • QueueSelector
  • Action

termios.h ファイルは、ioctl モデム制御操作もサポートします。

フィールドの説明
 
c_iflag
基本端末入力制御について説明します。 初期入力制御値は、すべてのビットがクリアされます。 可能な入力モードは以下のとおりです。
IGNBRK
中断条件を無視します。 非同期シリアル・データ伝送のコンテキストでは、 中断条件 は、1 バイトの送信に必要な時間を超えて継続するゼロ値ビットのシーケンスとして定義されます。 ゼロ値ビットのシーケンス全体が、複数バイトに相当する時間継続している場合でも、単一のブレーク条件として解釈されます。 IGNBRK (R) フラグが設定されている場合、入力で検出された中断条件は無視されます。これは、入力キューに書き込まれないため、どのプロセスによっても読み取られないことを意味します。
BRKINT
中断条件で割り込みをシグナル通知します。 IGNBRK (R) フラグが設定されておらず、 ブリキント フラグが設定されている場合、中断条件は入出力キューをフラッシュします。 端末がフォアグラウンド・プロセス・グループの制御端末である場合、ブレーク条件により、そのフォアグラウンド・プロセス・グループに シギント シグナルが生成されます。 IGNBRK (R) フラグも ブリキント フラグも設定されていない場合、中断条件は単一の ¥ 0 として読み取られます。または、 パMRK フラグが設定されている場合は、¥ 377, ¥ 0, ¥ 0 として読み取られます。
IGNPAR
パリティー・エラーのある文字を無視します。 このフラグが設定されている場合、フレーム・エラーまたはパリティー・エラー (ブレーク以外) があるバイトは無視されます。
PARMRK
パリティー・エラーに印を付けます。 パMRK フラグが設定されていて、 イングパー フラグが設定されていない場合、フレーム・エラーまたはパリティー・エラー (ブレーク以外) があるバイトは、3 文字のシーケンス ¥ 377, ¥ 0, Xとしてアプリケーションに渡されます。¥ 377, ¥ 0 は各シーケンスの前にある 2 文字のフラグで、 X はエラーで受け取った文字のデータです。 この場合にあいまいさを避けるために、 ISTRIP (I) フラグが設定されていないと、有効な文字 ¥ 377 が ¥ 377, ¥ 377 としてアプリケーションに与えられます。 イングパー フラグも パMRK フラグも設定されていない場合は、フレーム・エラーまたはパリティー・エラー (ブレーク以外) が単一文字 ¥ 0 としてアプリケーションに与えられます。
INPCK
入力パリティー検査を可能にします。 このフラグが設定されると、入力パリティー検査が使用可能になります。 設定されていない場合、入力パリティー検査は使用不可になります。 これにより、入力パリティー・エラーなしで出力パリティーを生成することができます。
ISTRIP
文字を除去します。 このフラグが設定されている場合、有効な入力文字は最初に 7 ビットにストリップされます。 それ以外の場合は、8 ビットすべてが処理されます。
INLCR
入力時に改行文字 (NL) を復帰 (CR) にマップします。 このフラグが設定されている場合、受信された NL 文字は CR 文字に変換されます。
IGNCR
CR 文字を無視します。 このフラグが設定されている場合、受信した CR 文字は無視され、読み取られません。
ICRNL
入力時に CR 文字を NL 文字にマップします。 ICRNL (I) フラグが設定されていて、 IGNCR (R) フラグが設定されていない場合、受信した CR 文字は NL 文字に変換されます。
IUCLC
入力時に大文字を小文字にマップします。 このフラグが設定されている場合、受信された大文字の英字は、対応する小文字に変換されます。
IXON
開始および停止出力制御を使用可能にします。 このフラグが設定されている場合、受信した STOP 文字は出力を中断し、受信した START 文字は出力を再開します。 IXON (アルバム) フラグが設定されている場合、START および STOP 文字は読み取られず、単にフロー制御機能を実行するだけです。 IXON (アルバム) フラグが設定されていない場合は、START 文字と STOP 文字が読み取られます。
IXANY
任意の文字が出力を再始動できるようにします。 このフラグが設定されている場合、入力文字は中断されていた出力を再開します。
IXOFF
スタート・アンド・ストップ入力制御を使用可能にします。 このフラグが設定されている場合、システムは、入力キューがほぼ満杯になったときに STOP 文字を送信し、キューが再び空になるほど十分な入力が読み取られたときに START 文字を送信します。
IMAXBEL (I)
入力ストリームがオーバーフローした場合に ASCII BEL 文字をエコーします。 それ以上の入力は保管されませんが、入力ストリームに既に存在する入力は失われません。 このフラグが設定されていない場合、BEL 文字はエコーされません。入力ストリームがオーバーフローすると、入力キュー内の入力は廃棄されます。 この関数では、 イEXTEN社 ビットも設定する必要があります。
c_oflag
システムが出力を処理する方法を指定します。 初期出力制御値は「すべてのビットがクリア」です。 可能な出力モードは以下のとおりです。
OPOST
ポストプロセス出力。 このフラグが設定されている場合、出力文字は、残りのフラグで示されているように後処理されます。 それ以外の場合、文字は変更されずに送信されます。
OLCUC
出力時に小文字を大文字にマップします。 このフラグを設定すると、小文字の英字が対応する大文字として送信されます。 このフラグは、多くの場合、 IUCLC (国際連合) 入力モードと一緒に使用されます。
ONLCR
出力時に NL を CR-NL にマップします。 このフラグが設定されている場合、NL 文字は CR-NL 文字ペアとして伝送されます。
OCRNL
出力時に CR を NL にマップします。 このフラグが設定されている場合、CR 文字は NL 文字として伝送されます。
ONOCR
0 桁目に CR 出力がないことを示します。 このフラグが設定されている場合、列 0 (最初の位置) では CR 文字は送信されません。
ONLRET
NL は CR 機能を実行します。 このフラグが設定されている場合、NL 文字は復帰機能を実行すると想定されます。 列ポインターは 0 に設定され、復帰に指定された遅延が使用されます。 オNLCR (R)オCRNLオノCR、または _ 翻訳不要 _ONLRET フラグのいずれも設定されていない場合、NL 文字は改行機能のみを実行するものと想定されます。 列ポインターは変更されません。 CR 文字が実際に伝送される場合、列ポインターは 0 に設定されます。

遅延ビットは、特定の文字が端末に送信されるときに、機械的またはその他の動作を可能にするために伝送が停止する時間を指定します。 実際の遅延は、回線速度とシステム負荷によって異なります。

OFILL
遅延に充てん文字を使用します。 このフラグが設定されている場合、充てん文字は、時限遅延の代わりに遅延のために送信されます。 これは、最小限の遅延のみを必要とする高ボー・レート端末の場合に役立ちます。
OFDEL
このフラグが設定されている場合、充てん文字は DEL です。 このフラグが設定されていない場合、充てん文字は NULL です。
NLDLY
改行文字遅延を選択します。 これは、 NL0 および NL1: と比較する前に使用するマスクです。
NL0
遅延なしを指定します。
NL1
約 0.10 秒の遅延を指定します。 _ 翻訳不要 _ONLRET フラグが設定されている場合、改行遅延の代わりに復帰遅延が使用されます。 OFILL (充てん) フラグが設定されている場合は、2 つの充てん文字が伝送されます。
CRDLY
復帰遅延を選択します。 これは、 CR0、 CR1、 CR2、および CR3: と比較する前に使用するマスクです。
CR0
遅延なしを指定します。
CR1
遅延が現在の桁位置に依存することを指定します。 OFILL (充てん) フラグが設定されている場合、この遅延は 2 つの充てん文字を伝送します。
CR2
約 0.10 秒の遅延を指定します。 OFILL (充てん) フラグが設定されている場合、この遅延は 4 つの充てん文字を伝送します。
CR3
約 0.15 秒の遅延を指定します。
TABDLY
水平タブ遅延を選択します。 これは、 TAB0、 TAB1、 TAB2、および TAB3と比較する前に使用するマスクです。 OFILL (充てん) フラグが設定されている場合、これらの遅延のいずれか ( TAB3を除く) が 2 つの充てん文字を送信します。
TAB0
遅延なしを指定します。
TAB1
遅延が現在の桁位置に依存することを指定します。 OFILL (充てん) フラグが設定されている場合は、2 つの充てん文字が伝送されます。
TAB2
約 0.10 秒の遅延を指定します。
TAB3
タブをスペースに拡張することを指定します。
BSDLY
バックスペース遅延を選択します。 これは、 BS0 および BS1: と比較する前に使用するマスクです。
BS0
遅延なしを指定します。
BS1
約 0.05 秒の遅延を指定します。 OFILL (充てん) フラグが設定されている場合、この遅延は 1 つの充てん文字を伝送します。
VTDLY
垂直タブ遅延を選択します。 これは、 VT0 および VT1: と比較する前に使用するマスクです。
VT0
遅延なしを指定します。
VT1
約 2 秒の遅延を指定します。
FFDLY
用紙送り遅延を選択します。 これは、 FF0 および FF1: と比較する前に使用するマスクです。
FF0
遅延なしを指定します。
FF1
約 2 秒の遅延を指定します。
c_cflag
端末のハードウェア制御を記述します。 基本制御モードに加えて、このフィールドでは以下の制御文字が使用されます。
CBAUD (D)
ボー・レートを指定します。 これらのビットは、接続のボー・レートを指定します。 特定のハードウェアについては、不可能な速度変更は無視されます。
B50
50 ボーです。
B75
75 ボーです。
B110
110 ボーです。
B134
134.5 ボーです。
B150
150 ボーです。
B200
200 ボーです。
B300
300 ボー・・・
B600
600 ボー・・・
B1200
1200 ボーです。
B1800
1800 ボーです。
B2400
2400 ボーです。
B4800
4800 ボー・ボー
B9600
9600 ボー。
B19200
19200 ボーです。
B38400
38400 ボーです。
エクタ
外部 A。
エクシバイト
外部 B。
CSIZE
文字サイズを指定します。 これらのビットは、送信操作と受信操作の両方の文字サイズをビット単位で指定します。 パリティー・ビットが使用されている場合、文字サイズにはパリティー・ビットは含まれません。
CS5
5 ビット
CS6
6 ビット
CS7
7 ビット
CS8
8 ビット。
CSTOPB
ストップ・ビットの数を指定します。 このフラグが設定されている場合は、2 つのストップ・ビットが送信されます。設定されていない場合は、1 つのストップ・ビットのみが送信されます。
CREAD
受信側を有効にします。 このフラグが設定されている場合、受信側は使用可能になります。 それ以外の場合、文字は受信されません。
PARENB
パリティーを使用可能にします。 このフラグが設定されている場合、パリティーの生成と検出が有効になり、各文字にパリティー・ビットが追加されます。
PARODD
奇数パリティーを指定します。 パリティーが使用可能になっている場合、 パオDD フラグは、設定されている場合は奇数パリティーを指定します。 パリティーが使用可能で、 パオDD フラグが設定されていない場合は、偶数パリティーが使用されます。
HUPCL
最後のクローズでハングアップします。 このフラグが設定されている場合、最後のプロセスが回線をクローズしたとき、またはプロセスが終了したとき (「データ端末作動可能」シグナルがドロップしたとき) に、回線は切断されます。
CLOCAL
ローカル回線を指定します。 このフラグが設定されている場合には, 回線はモデム制御のないローカル直接接続をもっているものと見なされます。 設定しない場合は、モデム制御 (ダイヤルアップ) が想定されます。
CIBAUD (D)
入力ボー・レートが出力レートと異なる場合に、入力ボー・レートを指定します。
パレス
マークおよびスペース・パリティーの拡張パリティーを指定します。
c_lflag
さまざまな端末機能を制御します。 オープン後の初期値は「すべてのビットがクリア」です。 このフィールドでは、基本モードに加えて、以下のマスク名シンボルが使用されます。
ISIG
シグナルを使用可能にします。 このフラグが設定されている場合、各入力文字は、特殊制御文字 INTR、QUIT、SUSP、および DSUSP に対して検査されます。 入力文字がこれらの制御文字の 1 つと一致した場合には, その文字と関連した機能が実行されます。 アイシグ フラグが設定されていない場合、検査は行われません。
ICANON
正規入力を有効にします。 このフラグが設定されると、正規処理がオンになります。これにより、消去と強制終了の編集機能、および NL、EOF、および EOL 文字で区切られた行への入力文字のアセンブリーが使用可能になります。 イキャノン フラグが設定されていない場合、読み取り要求は入力キューから直接満たされます。 この場合、読み取り要求は、以下のいずれかの条件が満たされるまで満たされません。
  • 最小 によって指定された最小文字数が受信されます。
  • 時間 で指定されたタイムアウト値は、最後の文字を受信してから有効期限が切れています。 これにより、入力のバーストを読み取ることができますが、1 文字の入力は許可されます。

最小 値と 時間 値は、それぞれ EOF 文字と EOL 文字の位置に保管されます。 最小 および 時間 の文字値は、数値を取得するために対応する ASCII 文字に変換されます。 時間値は 10 分の 1 秒を表します。

XCASE
正規の大文字と小文字の表示を有効にします。 このフラグが イキャノン フラグと一緒に設定されている場合、大文字 (または IUCLC (国際連合) 入力モードで小文字に変換された大文字) は、入力の前に ¥ (円記号) 文字を付けることによって受け入れられます。 出力の前にも円記号 (¥) が付きます。 このモードでは、出力が生成され、入力は以下のエスケープ・シーケンスを受け入れます。
対象ユーザー向け
使用
「(墓場)
\ `
|
\ !
~
\ ^
{
\ (
}
\ )
\
\ \

例えば、A は次のように入力されます。\a, \n\\n, および \N as\\\n.

NOFLSH
キューのフラッシュを使用不可にします。 このフラグを設定すると、INTR、QUIT、および SUSP 文字に関連した入出力キューの通常のフラッシュは行われません。
フルショー
出力をフラッシュします。 FLUSH 文字を入力してこのビットを設定すると、端末に書き込まれたデータは廃棄されます。 端末は、このビットをクリアすることによって、FLUSH 文字を入力する効果を取り消すことができます。
ペンディン
保留中の入力を再印刷します。 このフラグが設定されている場合、ロー・モードから正規モードへの切り替え後に保留されているすべての入力は、次に読み取り操作が保留になったとき、または次に入力が到着したときに再入力されます。 ペンディン フラグは、内部状態ビットです。
IEXTEN
拡張 (実装定義) 関数が入力データから認識されるようにします。 このフラグが設定されていない場合、インプリメンテーション定義の関数は認識されず、対応する入力文字は、 イキャノンアイシグIXON (アルバム)、および IXOFF (オフ) の各フラグについて記述されているとおりに処理されます。 以下の特殊制御文字を認識するには、 イEXTEN社 フラグを設定する必要があります。
  • VEOL2
  • VDSUSP (V)
  • VREPRINT (V 印刷)
  • VDISCRD (V)
  • VWERSE (航空機)
  • VLNEXT (V)

以下のビットに関連付けられている関数も、 イEXTEN社 フラグを設定する必要があります。

  • IMAXBEL (I)
  • エホケ
  • ECHOPRT (E)
  • エホCTL
TOSTOP
バックグラウンド・プロセス・グループ内のプロセスが制御端末に書き込もうとしたときに、 SIGTTOU (S) シグナルを送信します。 SIGTTOU (S) シグナルは、プロセス・グループのメンバーを停止します。
ECHO
エコーを有効にします。 このフラグが設定されている場合、文字は受信時にエコー出力されます。

イキャノン が設定されている場合、以下のエコー機能も使用できます。

ECHOE
消去文字を Backspace-Space-Backspace としてエコーします。 エコー フラグと ECHOE (E) フラグの両方が設定されていて、 ECHOPRT (E) フラグが設定されていない場合、ERASE 文字と WERASE 文字は 1 つ以上の ASCII Backspace-Space-Backspace シーケンスとしてエコー出力され、画面から最後の文字が消去されます。
ECHOPRT (E)
エコー フラグと ECHOPRT (E) フラグの両方が設定されている場合、シーケンス内の最初の ERASE 文字と WERASE 文字は ¥ (バックスラッシュ) としてエコーされ、その後に消去される文字が続きます。 後続の ERASE および WERASE 文字は、消去される文字を逆順にエコーします。 次の非消去文字により、非消去文字がエコーされる前に/(スラッシュ) が入力されます。 この関数では、 イEXTEN社 ビットも設定する必要があります。
エホケ
Backspace-Space-オンライン強制終了時に行全体をバックスペースします。 このフラグが設定されている場合、kill 文字は、( ECHOE (E) フラグおよび ECHOPRT (E) フラグによって選択されたメカニズムを使用して) 画面から行全体を消去することによってエコー出力されます。 この関数では、 イEXTEN社 フラグも設定する必要があります。
ECHOK
強制終了後に NL 文字をエコーします。 _ 翻訳不要 _ECHOK フラグが設定されていて、 エホケ フラグが設定されていない場合、強制終了文字の受信後に NL 文字がエコーされます。 これは、行が削除されることを強調します。
ECHONL
NL 文字をエコーします。 ECHONL (E) フラグが設定されている場合、 エコー フラグが設定されていなくても NL 文字はエコーされます。 これは、「ローカル・エコー」(「半二重」とも呼ばれる) に設定されている端末の場合に役立ちます。
エホCTL
制御文字 (0 から 37 までの 8 進数のコード) を ^Xとしてエコーします。ここで、 X は、制御文字のコードに 100 個の 8 進数を追加した結果の文字です。 (例えば、8 進コード 1 の文字は、次のようにエコーされます。^A)。 ASCII DEL 文字 (コード 177 8 進数) は、次のようにエコーされます。^?ASCII TAB、NL、および START 文字はエコー出力されません。 エスケープされない限り (円記号が前に付きます)、EOF 文字はエコーされません。 その結果、EOT はデフォルトの EOF 文字であるため、EOT に応答する端末は停止しません。 この関数では、 イEXTEN社 フラグも設定する必要があります。
c_cc
特殊制御文字を定義する配列を指定します。 各関数の相対位置と初期値は、以下のとおりです。
VINTR
INTR 特殊文字 (Ctrl-c) に索引を付けます。これは、 アイシグ フラグが設定されている場合に入力で認識されます。 INTR 文字は、 シギント シグナルを生成します。このシグナルは、端末が制御端末であるフォアグラウンド・プロセス・グループ内のすべてのプロセスに送信されます。 アイシグ フラグが設定されている場合、INTR 文字は処理時に廃棄されます。
VQUIT
QUIT 特殊文字 (Ctrl-\) に索引を付けます。これは、 アイシグ フラグが設定されている場合に入力で認識されます。 QUIT 文字は、 SIGQUIT (ソフトウェア) シグナルを生成します。このシグナルは、端末が制御端末であるフォアグラウンド・プロセス・グループ内のすべてのプロセスに送信され、 コア イメージ・ファイルを現行作業ディレクトリーに書き込みます。 アイシグ フラグが設定されている場合、QUIT 文字は処理時に破棄されます。
VERASE
ERASE 特殊文字 (Backspace) に索引を付けます。これは、 イキャノン フラグが設定されている場合に入力時に認識されます。 ERASE 文字は、NL、EOL、EOF、または EOL2 文字で区切られた行の先頭を超えて消去することはありません。 イキャノン フラグが設定されている場合、ERASE 文字は処理時に破棄されます。
VKILL
KILL 特殊文字 (Ctrl-u) に索引を付けます。これは、 イキャノン フラグが設定されている場合に入力で認識されます。 KILL 文字は、NL、EOL、EOF、または EOL2 文字で区切られた行全体を削除します。 イキャノン フラグが設定されている場合、KILL 文字は処理時に廃棄されます。
VEOF
EOF 特殊文字 (Ctrl-d) に索引を付けます。これは、 イキャノン フラグが設定されている場合に入力で認識されます。 EOF を受け取ると、読み取られるのを待っているすべての文字が、新しい行を待たずに即時にプロセスに渡され、EOF は廃棄されます。 EOF が行の先頭で受信された場合 (待機中の文字がない場合)、読み取りからゼロの文字カウントが戻され、ファイルの終わりを示します。 イキャノン フラグが設定されている場合、EOF 文字は処理時に廃棄されます。
VEOL
EOL 特殊文字 (Ctrl-@ または ASCII NULL) に索引を付けます。これは、 イキャノン フラグが設定されている場合に入力で認識されます。 EOL は NL のような追加の行区切り文字であり、通常は使用されません。
VEOL2
EOL2 特殊文字 (Ctrl-@ または ASCII NULL) に索引を付けます。これは、 イキャノン フラグおよび イEXTEN社 フラグが設定されている場合に入力で認識されます。 EOL2 は NL のような追加の行区切り文字であり、通常は使用されません。
VSTART
START 特殊文字 (Ctrl-q) に索引を付けます。これは、 IXON (アルバム) フラグが設定されている場合は入力で認識され、 IXOFF (オフ) フラグが設定されている場合は出力で生成されます。 START 文字は、STOP 文字によって中断された出力を再開するために使用できます。 IXON (アルバム) フラグが設定されている場合、START 文字は処理時に廃棄されます。 出力が中断されていない間は、START 文字は無視され、読み取られません。 VSTRT (V)VSTART (V)の別名です。
VSTOP
STOP 特殊文字 (Ctrl-s) に索引を付けます。これは、 IXON (アルバム) フラグが設定されている場合は入力で認識され、 IXOFF (オフ) フラグが設定されている場合は出力で生成されます。 STOP 文字を端末に使用して、読み取り前に出力が消えないようにすることができます。 IXON (アルバム) フラグが設定されている場合、STOP 文字は処理時に廃棄されます。 出力が中断されている間は、STOP 文字は無視され、読み取られません。
VSUSP
SUSP 特殊文字 (Ctrl-z) に索引を付けます。これは、 アイシグ フラグが設定されている場合に入力で認識されます。 SUSP 文字は、 _ 翻訳不要 _SIGTSTP シグナルを生成します。このシグナルは、端末が制御端末であるフォアグラウンド・プロセス・グループ内のすべてのプロセスに送信されます。 アイシグ フラグが設定されている場合、SUSP 文字は処理時に破棄されます。
VDSUSP (V)
DSUSP 特殊文字 (Ctrl-y) に索引を付けます。これは、 アイシグ フラグと イEXTEN社 フラグが設定されている場合に入力で認識されます。 DSUSP 文字は、SUSP 文字と同様に _ 翻訳不要 _SIGTSTP シグナルを生成しますが、フォアグラウンド・プロセス・グループのプロセスが DSUSP 文字を読み取ろうとすると、DSUSP が入力されたときではなく、シグナルが送信されます。 アイシグ フラグと イEXTEN社 フラグが設定されている場合、DSUSP 文字は処理時に破棄されます。
VREPRINT (V 印刷)
REPRINT 特殊文字 (Ctrl-r) に索引を付けます。これは、 イキャノン フラグと イEXTEN社 フラグが設定されている場合に入力で認識されます。 REPRINT 文字は、読み取られていないすべての文字を、前に改行を付けて再印刷します。 イキャノン フラグと イEXTEN社 フラグが設定されている場合、REPRINT 文字は処理時に廃棄されます。
VDISCRD (V)
DISCARD 特殊文字 (Ctrl-o) に索引を付けます。これは、 イキャノン フラグと イEXTEN社 フラグが設定されている場合に入力で認識されます。 DISCARD 文字を使用すると、別の DISCARD 文字が入力されるか、さらに入力が到着するか、条件がプログラムによってクリアされるまで、後続の出力は破棄されます。 イキャノン フラグと イEXTEN社 フラグが設定されている場合、DISCARD 文字は処理時に廃棄されます。
VWERSE (航空機)
WERASE 特殊文字 (Ctrl-w) に索引を付けます。これは、 イキャノン フラグと イEXTEN社 フラグが設定されている場合に入力で認識されます。 WERASE 文字を使用すると、前のワードが消去されます。 WERASE 文字は、NL、EOL、EOF、または EOL2 文字で区切られた行の先頭を超えて消去されることはありません。 イキャノン フラグと イEXTEN社 フラグが設定されている場合、WERASE 文字は処理時に破棄されます。
VLNEXT (V)
LNEXT (リテラルの次の) 特殊文字 (Ctrl-v) に索引を付けます。これは、 イキャノン フラグと イEXTEN社 フラグが設定されている場合に入力で認識されます。 LNEXT 文字を使用すると、次の文字の特殊な意味が無視されるため、システムによって解釈されずに文字を入力することができます。 イキャノンエコー、および イEXTEN社 フラグが設定されている場合、LNEXT 文字は処理時に ^-Backspace シーケンスに置き換えられます。
VMIN
最小 値に索引を付けます。これは特殊文字ではありません。 最小 値の使用については、「ldterm Line 漬け」 プログラミングの一般概念: プログラムの作成とデバッグ でのの非正規モード入力処理の説明に記載されています。
VTIME
時間 値に索引を付けます。これは特殊文字ではありません。 時間 値の使用については、「ldterm Line 漬け」 プログラミングの一般概念: プログラムの作成とデバッグ でのの非正規モード入力処理の説明に記載されています。

次の制御文字の文字値を変更することができます。

項目 説明
INTR EOF 中止 DISCARD
QUIT eol SUSP werase
ERASE EOL2 dsusp lnext
KILL 開始 REPRINT REPRINT

ERASE、KILL、および EOF 文字も、特殊な処理が行われないようにエスケープすることができます (円記号が前に付きます)。

パラメーター値の定義

tcsetattr サブルーチンの OptionalActions パラメーターの以下の値も、 termios.h ファイルに定義されています。

項目 説明
TCSANOW 参照された テルミオス 構造体から端末に関連付けられたパラメーターを即時に設定します。
TCSADRAIN オブジェクト・ファイルに書き込まれたすべての出力が送信されるまで待機してから、 テルミオス 構造から端末パラメーターを設定します。
TCSAFLUSH テルミオス 構造体から端末パラメーターを設定する前に、オブジェクト・ファイルに書き込まれたすべての出力が送信され、受信されたが読み取られなかったすべての入力が破棄されるまで待機します。

このヘッダー・ファイルには、 tcflush サブルーチンの QueueSelector パラメーターに関する以下の値も定義されています。

項目 説明
TCIFLUSH 受信したが読み取られていないデータをフラッシュします。
TCOFLUSH 書き込まれているが送信されていないデータをフラッシュします。
TCIOFLUSH 受信されたが読み取られなかったデータ、および書き込まれたが送信されなかったデータをフラッシュします。

tcflow サブルーチンの Action パラメーターの以下の値も、 termios.h ファイルに定義されます。

項目 説明
TCOOFF TCP フロー サブルーチンで指定されたオブジェクト・ファイルによるデータの出力を中断します。
TCOON TCOOFF アクションによって中断されたデータ出力を再開します。
TCIOFF 端末装置によるデータ伝送を停止するために停止文字を伝送します。
TCION 端末装置によるデータ伝送を開始または再開するための開始文字を伝送します。

モデム制御操作

モデム制御に使用される以下の ioctl 操作は、 POSIX 伝送制御手順インターフェースの拡張です。 これらの操作をプログラムで使用するには、プログラムに ioctl.h ファイル用の #include ステートメントが含まれている必要があります。

項目 説明
TIOCMBIS (国際決済銀行) このコマンドの引数は、整数マスク値によって指定された制御行をオンにする整数へのポインターです。 その他の制御回線は影響を受けません。
TIOCMBIC (T) このコマンドの引数は、整数マスク値によって指定された制御行をオフにする整数へのポインターです。 その他の制御回線は影響を受けません。
TIOCMGET (IOCMGET) すべてのモデム・ビットを取得します。 このコマンドの引数は、モデム状況表示行の現在の状態が保管されている整数へのポインターです。 どのモデム状況およびモデム制御回線がサポートされるかは、ハードウェアおよびハードウェアのデバイス・ドライバーの機能によって異なります。
TIOCMSET (IOCMSET) すべてのモデム・ビットを設定します。 このコマンドの引数は、モデム・ビットの新しいセットを含む整数へのポインターです。 モデム制御ビットは、回線のビットが設定されているかクリアされているかに応じて、これらのビットを使用してモデム制御回線をオンまたはオフにします。 モデム状況ビットはすべて無視されます。 サポートされる実際のモデム制御回線は、ハードウェアおよびハードウェアのデバイス・ドライバーの機能によって異なります。

整数は、モデム制御 Ioctl コマンドが作動する、以下のいずれかのモデム制御回線または状況表示回線を指定します。

TIOCM_LE
線の有効化
TIOCM DTR (TIOCM_DTR)
データ端末レディー
TIOCM RTS (TIOCM_RTS)
送信要求
TIOCM ST (TIOCM_ST)
2 次送信
TIOCM SR (TIOCM_SR)
2 次受信
TIOCM CTS (TIOCM_CTS)
送信可
Tiocm_car (自動車)
キャリア検出
TIOCM CD (TIOCM_CD)
Tiocm_car (自動車)
TIOCM_RNG
リング
TIOCM RI (TIOCM_RI)
TIOCM_RNG
TIOCM DSR (TIOCM_DSR)
データ・セット・レディー。
Tiocmiwait (TID 待機) モデム状況表示行が状況を変更するのを待ってください。
引数は、状況変更を待機するモデム状況表示行を指定する整数マスク値へのポインターであり、以下の 1 つ以上の値で構成することができます。
TIOCM CTS (TIOCM_CTS)
送信可
Tiocm_car (自動車)
キャリア検出
TIOCM CD (TIOCM_CD)
Tiocm_car (自動車)
TIOCM_RNG
リング
TIOCM RI (TIOCM_RI)
TIOCM_RNG
TIOCM DSR (TIOCM_DSR)
データ・セット・レディー。
要求は、指定された行の 1 つが状況を変更するまでブロックしてから、呼び出し側に戻ります。 この Ioctl は、 O_NDELAY (Y) または O_ 非ブロック が設定されている場合でもブロックすることに注意してください。

指定された回線のいずれも状況を変更しない場合、 Ioctl は無期限にブロックする可能性があるため、 アラーム () タイマーと一緒に使用する必要があります。

TIOCM_RNG または TIOCM_RI が指定されている場合、ハードウェア制限のために状況表示行が on から off に遷移したときにのみ、遷移が報告されます。
注: この Ioctl の正しい動作は、正しいケーブル接続に依存します。