SELECT , EXAMINE 和 STATUS 命令将为我提供每个邮箱(文件夹)的 UIDNEXT 值。我正在寻找一种确定 UIDFIRST 之类的有效方法,即为每个邮箱启动UID。我了解没有直接命令可以得到它。
我可以使用{strong> UID SEARCH ALL (所有given here
)来获取文件夹的所有UIDP.S。不能保证结果按照RFC中给出的升序排列。
这将为我提供该特定所选邮箱中所有可用的UID,并且我可以对其进行排序,并从UID列表中获取最小的UID。
考虑其中包含近百万封邮件的邮箱。进行网络呼叫以及将结果解析为数字列表并将其排序将是无效的。
是否还有其他方法可以有效获取每个邮箱的第一个UID?
答案 0 :(得分:2)
您想要的命令为a fetch 1 uid
,它将始终返回最低的UID,除非邮箱为空。使用a uid search 1
可以达到相同的效果,即。搜索具有MSN 1的消息,如果邮箱为非空,则返回其UID;如果邮箱为空,则返回空结果。使用适合您的喜好。
1是最低的,因为UID必须按升序排列,请参见3501 page 9。我认为不需要搜索命令以任何特定顺序返回消息,但是MSN和UID绝对必须一起上升。