GNU mailutils:如何在邮箱模式中编码“@”和“$”

GNU mailutils: How to encode '@' and '$' in mailbox patterns

我正在尝试访问远程邮件服务器并使用 mailutils 程序消息输出邮箱中的消息数。

我 运行 来自 shell 的程序:

messages --config-file=/path/to/file/mailutils.cfg

其中 mailutils.cfg 包含

mailbox {
  mailbox-pattern imaps://xxx@yyy.de:pass$word@imap.servername.de/INBOX;
}

和xxx@yyy.de是用户名,不可更改 pass$word 也是不能更改的密码。

我收到一条德语错误消息,翻译成英语后会是这样的:

messages: mailbox could not be created: port and service invalid

当我 运行 imap 邮箱(不是 imaps)上的程序更容易 user/password 组合一切正常。所以我得出结论,mailutils 不喜欢密码中的“$”and/or 用户名中的“@”。

当我 运行 用户 xxx@yyy.de 的消息使用简单的密码 abcd 使用 @ 符号的 '%40' 编码

mailbox {
  mailbox-pattern imaps://xxx%40yyy.de:abcd@imap.servername.de/INBOX;
}

我收到错误消息 'verstreutes Zeichen %',这可能意味着 'found infeasible character %'

那么:如何在 mailutils 中对 '@' 和 '$' 进行编码? 我可能是瞎了但是手册上没有告诉如何解决这个问题。

简单,将模式放入双引号(Quotes)

mailbox-pattern "imaps://xxx%40yyy.de:abcd@imap.servername.de/INBOX";