--- layout: post title: E-Mail als Wiedervorlage Teil 2 --- Wie [hier](/2016/04/07/e-mail-als-wiedervorlage-teil-1/) beschrieben, habe ich mir ein Wiedervorlagen System für mein Postfach gebastelt. Schiebe ich E-Mails in den Ordner *3 days*, so taucht diese in drei Tagen wieder in meinem Postfach auf. Laufen tut dies nun seit über einen Monat bei mir und ich bin damit bisher sehr glücklich. Das Verschieben der E-Mails läuft über ein Script, welches als Cronjob jedentag um Mitternacht ausgeführt wird. ##Ordner Struktur Wie im [ersten Artikel](/2016/04/07/e-mail-als-wiedervorlage-teil-1/) beschrieben umgesetzt: ``` INBOX ├── ... ├── Wiedervorlagen | ├── 1 Tag | ├── 2 Tage | ├── 3 Tage | ├── 4 Tage | ├── 5 Tage | ├── 6 Tage └── └── 7 Tage ``` ##Das Script Zuerst prüfen wir, ob im Ordner *1 day* Mails sind. Sind Mails vorhanden, entfernen wir die *gelesen* Markierung. ``` if [ "$(ls -A $mailpath/._wiedervorlage.1\ day/cur)" ]; then cd $mailpath/Maildir/._wiedervorlage.1\ day/cur for i in `ls $mailpath/Maildir/._wiedervorlage.1\ day/cur` do mv $i `echo $i | sed 's/.\{4\}$//'` done fi ``` Danach fangen wir an die Mails aus den Ordner in den nächsten zu verschieben. Vom Ordner *1 day* in die *Inbox*, vom Ordner *2 days* in den *1 day* Ordner, usw. ``` # Move '1 day' Mails to Inbox if [ "$(ls -A $mailpath/._wiedervorlage.1\ Tag/cur)" ]; then mv $mailpath/._wiedervorlage.1\ day/cur/* $mailpath/Maildir/new/. fi # Move '2 days' Mails to '1 day' if [ "$(ls -A $mailpath/Maildir/._wiedervorlage.2\ Tage/cur)" ]; then mv $mailpath/._wiedervorlage.2\ days/cur/* $mailpath/._wiedervorlage.1\ day/cur/. fi ``` usw. ##Fazit Wer E-Mails gerne später bearbeiten will, ohne aber seine Inbox voller E-Mails zu haben, der hat hiermit eine ideale Lösung. Das Script kann man sicher noch optimieren aber sonst eine klare kopier Empfehlung :-)