GDB の下で動作するあなたのプログラムは、デフォルトで GDB と同一の 端末を用いて入出力を行います。
あなたは、プログラムの入出力に対するリダイレクトを、`run' コマンド への `sh'-スタイルのリダイレクションによって行うことができます。 例えば、
run > outfile
はプログラムを起動し、その出力を `outfile' に転換します。
プログラムの入出力を指定する別の方法は、`tty' コマンドを使うと いう方法です。このコマンドは引数としてファイル名を受け取り、結果として このファイルを `run' コマンドがこの後デフォルトで利用するように します。これはまた、この後 `run' コマンドが起動した時のために、 チャイルドプロセスのための端末のコントロールをリセットします。例えば、
tty /dev/ttyb
は `run' コマンドの直後に起動したプロセスがデフォルトで入出力を 行う端末を `/dev/ttyb' とし、それらの制御端末をそこにします。
`tty' コマンド指定後の `run' による明白なリダイレクトは 入出力リダイレクトとして有効であり、制御端末には有効になりません。
あなたが `tty' コマンドやリダイレクトによる入力のある `run' コマンドを使った場合、それはあなたのプログラムへの入力 だけに影響を及ぼします。GDB への入力は、依然、あなたの端末から 受け取られます。