QTOOL

Section: Maintenance Commands (8)
Updated: $Date: 2000/12/15 19:50:41 $
Index JM Home Page
 

名前

qtool - sendmail のキューを操作する  

書式

qtool.pl [options] target_directory source [source ...]

qtool.pl [-d|-b] [options] source [source ...]  

説明

qtool は sendmail が使用するキューファイルをキューディレクトリ間で移動する。 sendmail と同じロック機構を使うので、 sendmail が稼働している間も安全に使用できる。

オプションが指定されていない場合、 qtool は source で指定された全てのキューファイルを ディレクトリ target_directory に移動する。 source は、キュー制御ファイル・キューファイルの ID・ キューディレクトリのどれでもよい。

-d オプションが指定された場合、qtool は source で指定されたメッセージを 移動ではなく削除する。

-b オプションが指定された場合、選択されたメッセージは -OTimeout.queuereturn=now オプションをつけた sendmail を実行することにより バウンスされる (送信者に送り返される)。  

オプション

-b
source で指定された全てのメッセージをバウンスする。 メッセージはすぐにバウンスされる。 メッセージの配送を試みない。
-C configfile
sendmail の設定ファイルを指定する。 デフォルトは /etc/mail/sendmail.cf である。
-d
source で指定された全てのメッセージを削除する。
-e perl_expression
source で指定されたキューファイルについて、 perl_expression を評価する。 perl_expression が真と評価された場合、そのキューファイルは移動される。 perl_expression の詳細については、下記を参照すること。
-s seconds
source で指定されたキューファイルのうち 修正時刻が seconds 秒より前のものだけを移動する。
 

Perl 表現

このプログラムでは Perl 表現を使うことができる。 Perl 表現の中では、キューに入れられたメッセージのデータだけでなく、 制御ファイルのフィールドの内容を含むハッシュにもアクセスできる。 ハッシュは %msg という名前である。 フィールドに複数の値がある ('Recipient' のような) 場合、 値は配列として返される。 値が 1 つの場合、値はスカラーで返される。 ハッシュ %msg を使って、以下の値にアクセスすることができる。
auth
AUTH= パラメータ。
body_type
ボディタイプ (8BITMIME, 7BIT, または未定義)。
body_last_mod_time
ボディが最後に修正された時刻。紀元年 (epoch) から秒数で表す。
body_size
ボディファイルのサイズ (バイト単位)。
charset
文字セット (将来使用するためにある)。
content-length
Content-Length: ヘッダー値 (Solaris の sendmail のみ)。
controlling_user
制御しているユーザー。
control_last_mod_time
制御ファイルが最後に修正された時刻。紀元年 (epoch) から秒数で表す。
control_size
制御ファイルのサイズ (バイト単位)。
creation_time
制御ファイルが生成された時刻。
data_file_name
データファイル名 (使わない方が良い)。
envid
ESMTP で送られてきたオリジナルのエンベロープの ID。
error_recipient
エラーの場合の受信者 (使わない方が良い)。
flags
以下の値を持つことできる文字配列。
w
警告メッセージが送信された。
r
エラー応答、または DSN。
8
ボディに 8 ビットのデータがある。
b
Bcc: ヘッダーを削除する。
d
エンベロープに DSN RET= パラメータがある。
n
ボディを返さない。
headers
これは Perl のハッシュで、rfc822 フィールド名をキー、 rfc822 フィールド値を値にしている。 フィールドに 1 つしか値がない場合、値は文字列として返される。 ('Received' のように) フィールドに 2 つ以上の値がある場合、 値は文字列のリストとして返される。
inode_number
データ (ボディ) ファイルの i ノード番号。
next_delivery_time
次の配送が試みられる最も早い時刻。
num_delivery_attempts
配送を試みた回数。
macro
定義されたマクロ。
message
エンベロープ状態のメッセージ。
original_recipient
本来の受信者 (ORCPT= パラメータ)。
priority
変更されたメッセージの優先度。
recipient
コロンと受信者名が後に続く文字フラグの配列。フラグを以下に示す。
N
NOTIFY= パラメータがある。
S
要求した DSN が成功した。
F
要求した DSN が失敗した。
D
要求した DSN が遅れている。
P
(alias または forward で展開される前の) 元々のアドレス。
sender
送信者。
version
制御ファイルのバージョン。
 

例

qtool.pl q2 q1
キューディレクトリ q1 にあるキューファイルを キューディレクトリ q2 に移動する。
qtool.pl q2 q1/d6CLQh100847
キューディレクトリ q1 にある ID が d6CLQh100847 のメッセージを キューディレクトリ q2 に移動する。
qtool.pl q2 q1/qfd6CLQh100847
キューディレクトリ q1 にある ID が d6CLQh100847 のメッセージを キューディレクトリ q2 に移動する。
qtool.pl -e '$msg{num_delivery_attempts} == 3' /q2 /q1
今までに 3 回配送が試みられた全てのキューファイルを キューディレクトリ q1 から q2 に移動する。
 

バグ

sendmail 8.12 では、メッセージの qf ファイルと df ファイルを 別々のキューに格納することができる。 この場合、qtool には df ファイルのパス名ではなく、 qf ファイルのパス名を指定しなければならない。 安全のため、絶対に qtool に df ファイルのパス名を指定してはならない。  

関連項目

sendmail(8)  

履歴

qtool コマンドは sendmail 8.10 で登場した。

関連キーワード

キュー   メッセージ   sendmail   制御   ボディ   時刻   qtool   配送   expression   ハッシュ   time   CLQh   バウンス   修正   Perl   エンベロープ   受信者   delivery   要求   directory   安全   送信者   評価   表現   last

Linux マニュアル 一覧

関連するコマンド・関数

mailq.1   makemap.8   praliases.8   rmail.8   sendmail.8   aliases.5
 

Index

名前
書式
説明
オプション
Perl 表現
例
バグ
関連項目
履歴

This document was created by man2html, using the manual pages.
Time: 04:38:46 GMT, October 11, 2026