使用Shell脚本在O365收件箱中的邮件计数

时间:2018-11-29 16:01:56

标签: shell office365 imap

我需要使用以下脚本编写外壳脚本来获取Office 365中的INBOX文件夹计数。

{
echo "01 login ${IMAP_USER} ${IMAP_PASSWD}"

sleep 2

echo "03 STATUS INBOX MESSAGES"

sleep 2

echo "19 logout"

} | telnet outlook.office365.com 993 | tee ${LOG_DIR}/imap_status.log*

我在日志文件中仅收到以下消息。

Trying 52.97.137.194...
Connected to outlook.office365.com (52.97.137.194).
Escape character is '^]'.

无法使用imap用户名和密码登录邮箱。 由于是O365,因此我在用户名字段中提供了完整的邮件ID。

我分别测试了telnet命令,该命令也显示相同的消息。在Office 365迁移之前,我能够使用telnet连接和登录邮箱。

我需要对Office 365执行任何特定更改吗?

1 个答案:

答案 0 :(得分:0)

根据您希望在邮箱中执行的操作,您也许可以使用Office 365 Graph

该图使用简单的http rest调用,并允许您在用户Office 365帐户上作为休息命令(POST / GET / DELETE)执行许多操作。

您可以浏览诸如Outlook Mail(这是Office 365 Exchange电子邮件)之类的类别,并查看您是否能够使用这种功能。

另一个选择是使用Exchange Online模块的PowerShell。 Get-MailboxFolderStatistics可能会满足您关于文件夹的所有需求。

如果使用用户帐户登录,则只能查看该用户的数据。 使用Exchange管理员帐户,您可以从所有用户那里获取信息。