したいこと
①thunderbirdにイベント参加お問い合わせメールが届く
②thunderbirdのメールアドレス,氏名,イベント登録日をcsvファイルに書き出す
③csvからイベント日から逆算して4日前に確認メールを送る
④csvからイベント前日に確認メールを送る
疑問
これを行うためにシェルを使って自動で行えるかも,と思ったのですが正直実現する道筋からわかりません...
行っている方がいましたら,ご助力のほどお願い致します。
シェルスクリプト以外でもぜひ大歓迎です。
shellはubuntu18.0.4です。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
ベストアンサー
Thundebirdをいじってどうのするのは得策でないと思います。
メールサーバーの環境をいじれるなら、普通は、
1.「このアドレスにメールが来たら、このプログラムを起動する」ように設定する
2.そのプログラムで、来たメールを読んでしかるべき処理をしてファイル(またはDB)に保存
3.毎日一度、プログラムを起動して、ファイルを読み、該当者がいればメールする
というような処理にするかと思います。
メールサーバーの環境をいじれない場合は、1のところを、
1.定期的にメールサーバーにメールを取りに行き、あればプログラムを起動して渡す
という処理に変えます。
シェルスクリプトだけで出来ないかというと、出来なくはないですが、何らかのプログラミング言語を使うのと変わらない手間が掛かりますね。
#追記
Linux前提で言うと、
1.は、fetchmailという「メールを取りに行って、フォルダに格納したり、プログラムを起動したり」という機能のコマンドがあります。
これをcronからN分ごとに起動するか、あるいはデーモンモードでN分を指定して常駐させます。
2.はテキスト処理なので、grep
なりsed
、awk
なりで。PerlやRubyを使う手もあるでしょう。
3.はcronから起動して、テキスト処理して、sendmail
コマンドで送信ですね。メールが送れる設定が必要です。
また、設計に於いては、2と3の機能分担の検討も必要です。
#追記2
fetchmail
を使って、受信したメールをプログラムに送る設定ファイル~/.fetchmailrc
のサンプル。
plain
1defaults 2 uidl 3 no mimedecode 4 no rewrite 5 mda /fullpath/to/program # メールを渡すプログラムのフルパス 6 keep 7 8poll mail.example.com protocol pop3 # メールサーバー名とpopの方式 9 username xxxxxxxxx # ユーザー名 10 password xxxxxxxxx # pop 認証のパスワード
認証部分は、これだとパスワードが平文で送られるので、このまま使わない方が良いです。
詳しくは、man fetchmail
参照。
投稿2018/07/25 00:33
編集2018/07/25 02:12総合スコア84538
0
otn さんも書かれていますが、Thunderbird を介すのはかえって難しいです。
ちょっとすぐに詳細な回答ができないのでヒントのみ回答させてもらいますが、
- メールサーバから直接メール受信し、ファイルに出力してみる
- 出力されたファイルから各パラメータを抜き出してみる
- 抜き出したパラメータを条件としてなにか(イベント日と今日の日付を比較とか)してみる
- メールサーバを介してメールを送信してみる
という順番でスクリプトを作成し、cron とかで毎日自動実行するイメージかと思います!
ちなみにメールはどのようなメールを利用されてますか?
Gmail とか、自社運用とか…その情報がないと、実際のコマンドについてはサポートしづらいです。。
気になった文章
thunderbirdのメールアドレス,氏名,イベント登録日をcsvファイルに書き出す
Thunderbird の氏名とかではなく、メールの送信元メールアドレス、本文に記載されている氏名、イベント登録日…ですよね。
shellはubuntu18.0.4です。
Ubuntu は OS ですので、シェルといったら Bash とかそんなんだと思います。
投稿2018/07/25 01:26
総合スコア50
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/30 06:50
2018/07/30 07:33
2018/07/30 07:44
2018/07/30 07:47
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/25 00:39
2018/07/25 01:32
2018/07/25 01:59
2018/07/25 02:01
2018/07/25 02:33
2018/07/25 02:40
2018/07/25 02:56
2018/07/25 03:24
2018/07/25 06:13
2018/07/31 07:20
2018/07/31 07:26
2018/07/31 07:32
2018/07/31 07:41
2018/07/31 07:52
2018/07/31 07:53
2018/07/31 07:55
2018/07/31 08:27