.\" Copyright (c) 1999 Sendmail, Inc. and its suppliers. .\" All rights reserved. .\" .\" By using this file, you agree to the terms and conditions set .\" forth in the LICENSE file which can be found at the top level of .\" the sendmail distribution. .\" .\" .\" $Id: qtool.8,v 8.9.16.2 2000/12/15 19:50:41 gshapiro Exp $ .\" .\" Japanese Version Copyright (c) 2000-2002 Yuichi SATO .\" all rights reserved. .\" Translated Tue Nov 14 20:51:09 JST 2000 .\" by Yuichi SATO .\" Updated and Modified Thu Feb 15 03:19:13 JST 2001 by Yuichi SATO .\" Updated and Modified Mon Jan 14 17:58:43 JST 2002 .\" by Yuichi SATO .\" .TH QTOOL 8 "$Date: 2000/12/15 19:50:41 $" .SH 名前 qtool \- sendmail のキューを操作する .SH 書式 .B qtool.pl .RB [options] target_directory source [source ...] .PP .B qtool.pl [-d|-b] .RB [options] source [source ...] .SH 説明 .B qtool は sendmail が使用するキューファイルをキューディレクトリ間で移動する。 sendmail と同じロック機構を使うので、 sendmail が稼働している間も安全に使用できる。 .PP オプションが指定されていない場合、 .B qtool は \fIsource\fP で指定された全てのキューファイルを ディレクトリ \fItarget_directory\fP に移動する。 \fIsource\fP は、キュー制御ファイル・キューファイルの ID・ キューディレクトリのどれでもよい。 .PP -d オプションが指定された場合、qtool は source で指定されたメッセージを 移動ではなく削除する。 .PP -b オプションが指定された場合、選択されたメッセージは -OTimeout.queuereturn=now オプションをつけた sendmail を実行することにより バウンスされる (送信者に送り返される)。 .SS オプション .TP \fB\-b\fP source で指定された全てのメッセージをバウンスする。 メッセージはすぐにバウンスされる。 メッセージの配送を試みない。 .TP \fB\-C\fP configfile sendmail の設定ファイルを指定する。 デフォルトは /etc/mail/sendmail.cf である。 .TP \fB\-d\fP source で指定された全てのメッセージを削除する。 .TP \fB\-e\fP \fIperl_expression\fP \fIsource\fP で指定されたキューファイルについて、 \fIperl_expression\fP を評価する。 \fIperl_expression\fP が真と評価された場合、そのキューファイルは移動される。 \fIperl_expression\fP の詳細については、下記を参照すること。 .TP \fB\-s\fP \fIseconds\fP \fIsource\fP で指定されたキューファイルのうち 修正時刻が \fIseconds\fP 秒より前のものだけを移動する。 .SS Perl 表現 このプログラムでは Perl 表現を使うことができる。 Perl 表現の中では、キューに入れられたメッセージのデータだけでなく、 制御ファイルのフィールドの内容を含むハッシュにもアクセスできる。 ハッシュは \fI%msg\fP という名前である。 フィールドに複数の値がある ('Recipient' のような) 場合、 値は配列として返される。 値が 1 つの場合、値はスカラーで返される。 ハッシュ \fI%msg\fP を使って、以下の値にアクセスすることができる。 .TP \fBauth\fP AUTH= パラメータ。 .TP \fBbody_type\fP ボディタイプ (\fB8BITMIME\fP, \fB7BIT\fP, または未定義)。 .TP \fBbody_last_mod_time\fP ボディが最後に修正された時刻。紀元年 (epoch) から秒数で表す。 .TP \fBbody_size\fP ボディファイルのサイズ (バイト単位)。 .TP \fBcharset\fP 文字セット (将来使用するためにある)。 .TP \fBcontent-length\fP Content-Length: ヘッダー値 (Solaris の sendmail のみ)。 .TP \fBcontrolling_user\fP 制御しているユーザー。 .TP \fBcontrol_last_mod_time\fP 制御ファイルが最後に修正された時刻。紀元年 (epoch) から秒数で表す。 .TP \fBcontrol_size\fP 制御ファイルのサイズ (バイト単位)。 .TP \fBcreation_time\fP 制御ファイルが生成された時刻。 .TP \fBdata_file_name\fP データファイル名 (使わない方が良い)。 .TP \fBenvid\fP ESMTP で送られてきたオリジナルのエンベロープの ID。 .TP \fBerror_recipient\fP エラーの場合の受信者 (使わない方が良い)。 .TP \fBflags\fP 以下の値を持つことできる文字配列。 .PD 0 .RS +8 .TP 8 w 警告メッセージが送信された。 .TP 8 r エラー応答、または DSN。 .TP 8 8 ボディに 8 ビットのデータがある。 .TP 8 b Bcc: ヘッダーを削除する。 .TP 8 d エンベロープに DSN RET= パラメータがある。 .TP 8 n ボディを返さない。 .PD .RE .TP \fBheaders\fP これは Perl のハッシュで、rfc822 フィールド名をキー、 rfc822 フィールド値を値にしている。 フィールドに 1 つしか値がない場合、値は文字列として返される。 ('Received' のように) フィールドに 2 つ以上の値がある場合、 値は文字列のリストとして返される。 .TP \fBinode_number\fP データ (ボディ) ファイルの i ノード番号。 .TP \fBnext_delivery_time\fP 次の配送が試みられる最も早い時刻。 .TP \fBnum_delivery_attempts\fP 配送を試みた回数。 .TP \fBmacro\fP 定義されたマクロ。 .TP \fBmessage\fP エンベロープ状態のメッセージ。 .TP \fBoriginal_recipient\fP 本来の受信者 (ORCPT= パラメータ)。 .TP \fBpriority\fP 変更されたメッセージの優先度。 .TP \fBrecipient\fP コロンと受信者名が後に続く文字フラグの配列。フラグを以下に示す。 .PD 0 .RS +8 .TP 8 N NOTIFY= パラメータがある。 .TP 8 S 要求した DSN が成功した。 .TP 8 F 要求した DSN が失敗した。 .TP 8 D 要求した DSN が遅れている。 .TP 8 P (alias または forward で展開される前の) 元々のアドレス。 .PD .RE .TP \fBsender\fP 送信者。 .TP \fBversion\fP 制御ファイルのバージョン。 .SH 例 .TP \fBqtool.pl q2 q1\fP キューディレクトリ q1 にあるキューファイルを キューディレクトリ q2 に移動する。 .TP \fBqtool.pl q2 q1/d6CLQh100847\fP キューディレクトリ q1 にある ID が d6CLQh100847 のメッセージを キューディレクトリ q2 に移動する。 .TP \fBqtool.pl q2 q1/qfd6CLQh100847\fP キューディレクトリ q1 にある ID が d6CLQh100847 のメッセージを キューディレクトリ q2 に移動する。 .TP \fBqtool.pl -e '$msg{num_delivery_attempts} == 3' /q2 /q1\fP 今までに 3 回配送が試みられた全てのキューファイルを キューディレクトリ q1 から q2 に移動する。 .SH バグ sendmail 8.12 では、メッセージの qf ファイルと df ファイルを 別々のキューに格納することができる。 この場合、qtool には df ファイルのパス名ではなく、 qf ファイルのパス名を指定しなければならない。 安全のため、絶対に qtool に df ファイルのパス名を指定してはならない。 .SH 関連項目 sendmail(8) .SH 履歴 .B qtool コマンドは sendmail 8.10 で登場した。