名 前
procmailrc − procmail の rcfile 【 訳 注 : 設 定 フ ァ イ ル 】
書 式
$HOME/.procmailrc
説 明
取 り 敢 え ず す ぐ 始 め た い 場 合 は 、 procmail (1) マ ニ ュ ア ル の 最 後 に あ る 備 考 を 参 照 さ れ た い 。
rcfile は (procmail に と っ て 特 別 な 意 味 を 持 つ も の も あ る ) い く つ も の 環 境 変 数 へ の 値 の 設 定 と レ シ ピ を 含 め る こ と が で き る 。 最 も 簡 単 な 形 式 は 、 到 着 し た メ ー ル の ヘ ッ ダ を 検 索 す る 、 一 行 に お さ ま る 正 規 表 現 よ り な る レ シ ピ で あ る 。 マ ッ チ し た 最 初 の レ シ ピ は 、 メ ー ル の 行 き 先 (通 常 は フ ァ イ ル )を 決 定 す る 為 に 使 わ れ る 。 も し 、 処 理 が rcfile の 終 り に 到 達 す る と 、 procmail は メ ー ル を $DEFAULT へ 配 送 す る 。 【 訳 注 : procmail で は 、 受 信 す る メ ー ル に 対 す る 様 々 な 処 理 の 命 令 を recipe (レ シ ピ /処 方 )と 呼 ん で い る 。 】 レ シ ピ は 2種 類 存 在 す る : 配 送 指 示 と 非 配 送 指 示 で あ る 。 マ ッ チ す る 配 送 の 指 示 が あ る 場 合 、 procmail は (推 測 し た ) メ ー ル が 配 送 さ れ た と 見 な す 。 そ し て 、 レ シ ピ の 動 作 指 示 を 首 尾 良 く 完 遂 し た 後 、 rcfile の 処 理 を 終 了 す る 。 非 配 送 の 指 示 が あ る 場 合 、 レ シ ピ の 動 作 指 示 を 首 尾 良 く 完 遂 し た 後 、 rcfile の 処 理 は 続 行 さ れ る 。 配 送 レ シ ピ は メ ー ル の ヘ ッ ダ 及 び /又 は 本 文 に 以 下 の 作 用 を 引 き 起 こ す : フ ァ イ ル へ 書 き 込 ま れ る 、 プ ロ グ ラ ム に 呑 み 込 ま れ る 、 あ る い は メ ー ル ア ド レ ス へ 転 送 さ れ る 。 非 配 送 の レ シ ピ は 以 下 の 通 り : プ ロ グ ラ ム や フ ィ ル タ の 出 力 を procmail が 取 り 込 む も の 、 あ る い は 入 れ 子 構 造 の ブ ロ ッ ク を 開 始 さ せ る も の 。
procmail
に 対 し 、 配 送
レ シ ピ を あ た
か も 非 配 送 レ
シ ピ で あ る か
の よ う に 取 り
扱 う よ う に 命
令 す る こ と も
で き る 。 そ の
際 に は 、 該 当
す る レ シ ピ に
’c’ フ ラ グ を 指
定 す る 。 こ う
す る と procmail は 当
該 レ シ ピ へ 配
送 す る 為 の メ
ー ル の カ ー ボ
ン コ ピ ー を 作
成 し 、 rcfile の 処 理
を 続 行 す る 。
沢 山 の レ シ ピ
を 使 う こ と に
よ っ て 、 受 信
し た メ ー ル を
、 幾 つ か の メ
ー ル フ ォ ル ダ
へ と て も 簡 単
に 振 り 分 け る
こ と が で き る
。 但 し 、 メ ー
ル は そ れ ら メ
ー ル フ ォ ル ダ
に 同 時 に 到 達
す る か も 知 れ
な い 、 と い う
こ と も 心 に 留
め て お い て 欲
し い 。 (幾 つ か
の procmail プ ロ グ ラ
ム が 同 時 に 起
動 す る 場 合 を
想 定 し て い る
。 沢 山 の メ ー
ル が 到 着 す る
な ら 、 あ り 得
な い こ と で は
な い 。 ) こ の こ
と で ぐ ち ゃ く
ち ゃ に な ら な
い 為 に 、 是 非
と も ロ ッ ク フ
ァ イ ル を 正 し
く 使 っ て 頂 き
た い 。 環 境 変
数 の 指 定 と
レ シ ピ は rcfile 中
に 自 由 に 配 置
で き る 。 procmail に
と っ て 特 別 な
意 味 を 持 つ 環
境 変 数 は 全 て
、 解 析 さ れ た
瞬 間 に 、 適 切
に 使 わ れ る 。
(す な わ ち 、 必
要 な と き に は
い つ で も 新 た
に MAILDIR を 指 定 す
れ ば 、 カ レ ン
ト デ ィ レ ク ト
リ を 変 更 で き
る し 、 新 た に
LOCKFILE を 指 定 す れ
ば ロ ッ ク フ ァ
イ ル を 切 替 え
る こ と が で き
る し 、 い つ で
も umask を 変 更 で き
る 等 々 。 可 能
性 は 無 限 で あ
る :−) 。 こ れ ら
環 境 変 数 の 設
定 や 値 の 置 換
は sh(1) に お け る
処 理 と 完 全 に
等 し い 。 (こ れ
は あ ら ゆ る 引
用 符 や エ ス ケ
ー プ を 含 む 。 )
更 に 特 典 と し
て 、 ’=’ の 前 後
の 空 白 は 無 視
し て く れ る し
、 環 境 変 数 の
後 に ’=’ が な い
場 合 は そ の 環
境 変 数 自 体 を
環 境 か ら 消 去
し て く れ る 。
procmail か ら 起 動 さ
れ る 、 バ ッ ク
ク ォ ー ト で 囲
ま れ た プ ロ グ
ラ ム は 、 メ ー
ル 全 体 を 標 準
入 力 か ら 受 け
取 る 。 コ メ ン
ト
# か ら 始 ま る 行
は 、 全 て の 文
字 が 改 行 ま で
無 視 さ れ る 。
但 し 、 条 件 行
に は 当 て は ま
ら な い 。 条 件
行 に は コ メ ン
ト が 付 け ら れ
な い 。 レ シ ピ
’:’で 始 ま る 行
は レ シ ピ の 開
始 を 示 す 。 書
式 は 以 下 の 通
り : : 0 [flags] [ : [locallockfile] ]
<ゼ ロ あ る い は
そ れ 以 上 の 条
件 (1行 に 1つ )>
<ア ク シ ョ ン 行
は 厳 密 に 1つ > 条
件 行 は 先 頭 に
’*’ が 付 く 。 こ
の 文 字 に 続 く
全 て の 文 字 は
、 先 頭 と 末 尾
の 空 白 を 除 き
、 procmail 内 部 の egrep へ
正 確 に 渡 さ れ
る 。 こ れ ら の
正 規 表 現 は 一
般 的 な egrep(1) の 拡
張 正 規 表 現 と
完 全 に 互 換 性
が あ る 。 拡 張
正 規 表 現 の 章
も 参 照 さ れ た
い 。 条 件 行 は
論 理 積 で 評 価
さ れ る ; 条 件 が
な い 時 は デ フ
ォ ル ト で 全 て
真 と な る 。 使
用 可 能 な フ ラ
グ は 以 下 の 通
り :
H ヘ ッ ダ を |
egrep す る (デ フ ォ ル ト )。 (訳 注 : 正 確 に は 、 egrep と 同 じ 正 |
規 表 現 の 解 釈 に て 検 索 を 行 う 。 フ ラ グ を 省 略 す る と 、 こ の ’H’ フ ラ グ が 付 さ れ た も の と み な さ れ 、 続 く 条 件 行 は ヘ ッ ダ が 対 象 と な る 。 )
B 本 文 を |
egrep す る 。 | ||
D 内 部 の |
egrep に 対 し て 大 文 字 と 小 文 字 を 区 別 す る よ う 指 示 す る (デ フ ォ |
ル ト で は 逆 に 大 小 文 字 を 区 別 し な い )。
A こ の レ シ ピ は 、 |
(現 在 の ネ ス ト 構 造 の 段 階 に お け る ) ’A’ あ る い は ’a’ フ |
ラ グ が 付 さ れ て い な い 直 前 の レ シ ピ も 同 様 に マ ッ チ し な い 限 り 、 実 行 さ れ な い 。 こ れ に よ っ て 、 あ る 条 件 が 成 立 し た 時 に 実 行 さ れ る ア ク シ ョ ン を 複 数 列 挙 で き る 。
a |
’A’ と 同 じ 意 味 を 持 つ が 、 更 に 追 加 さ れ る 条 件 と し て 、 現 在 の レ シ ピ が 実 行 さ れ る 前 に 、 直 前 の レ シ ピ は 必 ず 正 常 終 了 し な け れ ば な ら な い 、 と い う 制 約 が あ る 。
こ の レ シ ピ は 直 前 の レ シ ピ が 実 行 さ れ な か っ た 時 に だ け 実 行 さ れ る 。 こ の レ シ ピ の 実 行 は ま た 、 直 後 に ’E’ フ ラ グ を 伴 う 全 て の レ シ ピ の 実 行 が 禁 止 さ れ る 。 こ れ に よ り 、 ’else if’ ア ク シ ョ ン を 構 築 す る こ と が で き る 。
こ の レ シ ピ は 直 前 の レ シ ピ の 実 行 が 失 敗 し た 時 に だ け 実 行 さ れ る 。 (す な わ ち 、 直 前 の ア ク シ ョ ン 行 の 実 行 結 果 が エ ラ ー を 伴 う 終 了 で あ っ た 場 合 で あ る 。 )
メ ー ル の ヘ ッ ダ を パ イ プ 、 フ ァ イ ル あ る い は メ ー ル 配 送 先 (デ フ ォ ル ト )に 渡 す 。
メ ー ル
の 本 文 を パ イ
プ 、 フ ァ イ ル
あ る い は メ ー
ル 配 送 先 (デ フ
ォ ル ト )に 渡 す
。 パ イ プ を フ ィ ル タ と 見 な す 。
procmail プ ロ セ ス の ク ロ ー ン が 作 成 さ れ る 。 (ロ ッ ク フ ァ イ ル は 継 承 さ れ な い 。 ) こ れ に よ っ て ク ロ ー ン は 普 通 に 実 行 さ れ 、 親 プ ロ セ ス は こ の 時 点 の ブ ロ ッ ク の 処 理 を 飛 ば し て 次 に 進 む 。
(通 常 は 無 視 さ れ る ); フ ィ ル タ が 正 常 終 了 し な か っ た 場 合 、 テ キ ス ト は フ ィ ル タ さ れ ず 、 フ ィ ル タ に 渡 す 以 前 の 状 態 の ま ま に な る 。
|