fetchmailのmdaオプションのテキストエンコーディング率

fetchmailのmdaオプションのテキストエンコーディング率

何の処理もせず、procmailなしで電子メールをダウンロードしたいと思います。 fetchmailを次のように設定しようとしています。

mda "/bin/sh -c 'cat > INBOX/new/$(date +%s_%N)'"

ただし、予想される「1428556930_751589889」の代わりに「yuchao_326621000」というファイルが作成されました。私の考えでは、fetchmailが "%s"を現在のユーザー名に置き換えているためです。

それでは、「mda」オプションで「%」をエンコードする方法は?

私が試したこと:

mda "/bin/sh -c 'cat > INBOX/new/$(date +%%s_%N)'"

mda "/bin/sh -c 'cat > INBOX/new/$(date +\%s_\%N)'"

上記の両方の方法は無効です。

答え1

fetchmailのソースコード(sink.c、行1183付近)を読み取った後、「%」をエンコードする方法が見つかりません。

したがって、唯一の回避策は "%s"を使用しないことであり、bashの一重引用符構文を使用すると簡単です。

mda "/bin/sh -c 'cat > INBOX/new/$(date +%''s_%N)'"

関連情報