如何使用IMAP命令查找上一封电子邮件(消息UID)。
我在windows pc上使用putty连接到imap服务器。
答案 0 :(得分:2)
当您选择收件箱时,它会通过EXISTS
响应告诉您邮件中有多少邮件。此号码也是运行邮箱的最高邮件序列号。然后,您可以通过获取此消息的UID来获取邮箱中的最高UID。
那是:
a SELECT INBOX
...
* 23 EXISTS
....
b FETCH 23 (UID)
* 23 FETCH (UID 207)
b OK
因此,207是邮箱中最高的UID。
您也可以执行UID SEARCH ALL并获取返回的最大数字。
答案 1 :(得分:2)
最简单的方法是询问由UID
*
确定的UIDNEXT
消息represents the largest number in use:
>>> a SELECT INBOX ... <<< * 3 EXISTS <<< a OK [READ-WRITE] Select completed. >>> b FETCH * (UID) <<< * 3 FETCH (UID 283) <<< b OK Fetch completed.
那就是说,我很好奇为什么你想知道邮箱中最高的UID。这个价值往往毫无意义;你不需要它用于任何IMAP命令,并且不表示该邮箱中曾经存在的UID的任何上限 - 你想要跟踪{{1}}。