IMAP UID MOVE в bash script - как это сделать propper? - PullRequest
0 голосов
/ 05 декабря 2018

У меня есть скрипт:

#!/bin/bash
mailsrv='mailserver.uk';
login='login@domain.uk';
pass='veryhardpass';
flw='/tmp/imap_msg';

id=1;

while true;
do
        echo "Message ${id}" 1>/dev/null
        curl -s --insecure --url "imaps://$mailsrv/INBOX/;UID=${id}" --user "$login:$pass" -o "$flw" || exit

        if [ -e $flw ]
        then
                cat "$flw" | /home/user/script.php;
                rm $flw;
                imapcmd="UID MOVE $id \\Trash; EXPUNGE";
                curl --verbose --insecure --url "imaps://$mailsrv/INBOX/" --user "$login:$pass" -X "$imapcmd" || exit
        fi

        id=`expr $id + 1`
done

Этот скрипт выдает мне ошибку:

< A002 OK Logged in
> A003 SELECT INBOX
< * FLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk)
< * OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk \*)] Flags permitted.
< * 1 EXISTS
< * 0 RECENT
< * OK [UIDVALIDITY 1515605811] UIDs valid
< * OK [UIDNEXT 1027] Predicted next UID
< A003 OK [READ-WRITE] Select completed (0.000 + 0.000 secs).
> A004 UID MOVE 1 \Trash;
< A004 NO [TRYCREATE] Mailbox doesn't exist: \Trash; (0.000 + 0.000 secs).
> A005 LOGOUT
< * BYE Logging out
< A005 OK Logout completed (0.000 + 0.000 secs).

Я застрял с этим несколько дней.

Я пытался:- много комбинаций в команде IMAP, - поиск в Google и поиск в Google, - попытка найти хороший пример UID MOVE с dovecot,

...