Sylpheedでメッセージを復号化するタスクを作成します。

Sylpheedでメッセージを復号化するタスクを作成します。

Sylpheed Eメールクライアントでメッセージを復号化したい場合手動次のコマンドを実行するには、カスタムタスクを作成することをお勧めします。

*gpg2 --no-tty --batch --yes --command-fd 0 --passphrase-fd 0 --decrypt %f|

これを使用して電子メールの復号化を試みると、端末の出力が電子メール本文に記録されます。ただし、電子メールファイルには最後の1000行だけが記録されます。 lxterminalのロールバック属性を変更しました/home/ubuntu/.config/lxterminal/lxterminal.conf。しかし、出力には影響しないようです。また、出力を私のEメールファイルにリダイレクトしようとしました。

*gpg2 --no-tty --batch --yes --command-fd 0 --passphrase-fd 0 --output %f --decrypt %f

この場合、メールのヘッダー情報はすべて失われました。

ベストアンサー1

以下では、新しいアクションを作成し、そのアクションにConfiguration / Actions...コマンドを割り当てます。*/home/ubuntu/Documents/CustomScripts/decryptMail.sh %f ~/doc

cryptoMail.sh ファイルには、次のコマンドが含まれています。

gpg2 --no-tty --batch --yes --command-fd 0 --passphrase-fd 0 --output $2 --decrypt $1
decryptedString=$(cat $2);
escaped=$(printf '%s\n' "$decryptedString" | sed 's:[\/&]:\\&:g;$!s/$/\\/');
sed -i '/-BEGIN PGP MESSAGE-/,/-END PGP MESSAGE-/{//!d}' $1;
sed -i "/BEGIN PGP MESSAGE/a $escaped" $1;

私が調査中にスクリプトを改善することができる2つの質問がありました。最初の質問はこの部分に関するものですが、~/docファイル($ 2で表示)の復号化されたテキストを電子メールファイル($ 1で表示)に挿入しようとするときです。 -functionを使用して実行できるという内容を読みましたrが、すべてのトレースはsed '/-BEGIN PGP MESSAGE-/r$1' $2機能しません。どんな提案がありますか? 2番目の質問は、Sylpheed電子メールファイルを再読み込みするようにどのように言いますか?これまで、私は別のEメールをクリックして復号化されたEメールに戻り、スクリプトがEメールファイルに加えた変更を確認する必要がありました。

おすすめ記事