【问题标题】:curl imap : how to get multiple email messages with one commandcurl imap:如何使用一个命令获取多封电子邮件
【发布时间】:2022-08-08 21:11:39
【问题描述】:

我们可以通过这个命令获取邮件 325 的主题

curl.exe -u user:pass imaps://imap.test.com/inbox;mailindex=325;section=header.fields%20(subject)

如果我想获取邮件 325 和 326 的主题怎么办?

我试过这个,没有运气

curl.exe -u user:pass imaps://imap.test.com/inbox;mailindex=325,326;section=header.fields%20(subject)

虽然,用 -v 我可以看到邮件 326 的主题,但这不是我想要的

curl.exe -v -u user:pass imaps://imap.test.com/inbox;mailindex=325,326;section=header.fields%20(subject)

当然用这个命令你可以看到325和326的主题,但这不是我想要的。

curl.exe -u user:pass imaps://imap.test.com/inbox;mailindex=321;section=header.fields%20(subject) imaps://imap.test.com/inbox;mailindex=322;sectio
n=header.fields%20(subject)
  • Curl 使用 URL 来寻址一个资源。要检索两个,您需要两个 URL。 (IMAP 命令可以表达比 URL 更多的内容。)

标签: email curl imap


【解决方案1】:

看来您已经非常接近了,several syntaxes are documented 为此目的:

curl.exe -u user:pass imaps://imap.test.com/inbox;mailindex={325,326};section=header.fields%20(subject)
                                                            ^   ^   ^

在这个例子中,mailindex 将设置为 325,请求将被处理,然后 mailindex 将被发送到 326,请求将被处理。结果将以相同的顺序发送。您可以放在括号之间的值不一定是数字,也可以是字符串。

可以使用稍微不同的语法来识别数值范围:

curl.exe -u user:pass imaps://imap.test.com/inbox;mailindex=[325-326];section=header.fields%20(subject)
                                                             ^  ^   ^

在这里,mailindex 将从 325 开始,以 326 结束,每一步隐式增量为 +1。也可以想增加另一个值:

curl.exe -u user:pass imaps://imap.test.com/inbox;mailindex=[326-330:2];section=header.fields%20(subject)
                                                                     ^^

在最后一个示例中,迭代将从 mailindex=326 开始,然后是 mailindex=328,最后是 mailindex=330。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-16
    • 2021-01-09
    • 1970-01-01
    • 2011-08-03
    • 2023-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多