用途:CLI for Microsoft 365(命令前缀 m365)用于从命令行管理 Microsoft 365 租户,覆盖 SharePoint Online、Entra ID、Teams、Planner、To Do、Outlook、Power Automate、Power Apps、Power Platform、Viva Engage、Purview、Graph、Exchange Online 等工作负载,并提供登录、状态、原始请求等核心命令。
主要能力:按“命令组 资源 动作”组织命令,如 m365 spo site list、m365 entra user list、m365 teams team list;支持 m365 request 直接调用任意 Microsoft API(含 @graph、@graphbeta、@spo 等 URL 令牌);支持 JMESPath 的 --query 过滤与投影;全局选项包括 -o/--output(json、text、csv、md、none)、--verbose、--debug、--help。
使用方式:需全局安装 npm install -g @pnp/cli-microsoft365,要求 Node.js LTS(18+),支持 Windows、macOS、Linux。首次可用 m365 setup 向导创建 Entra 应用注册并配置;登录方式含设备代码、浏览器、用户名密码、证书、客户端密钥、托管标识,也可通过环境变量 CLIMICROSOFT365_ENTRAAPPID、CLIMICROSOFT365_TENANT 预设。可用 m365 status 检查登录,m365 connection list/use 管理多连接,m365 context init 保存常用选项值。
适用场景:脚本化或交互式管理租户资源、批量查询与筛选数据、CI/CD 中应用身份自动化、通过原始请求调用未封装 API。
限制:需具备相应 API 权限,命令失败可查 --help permissions;JMESPath 区分大小写;含空格的值需加引号,以短横线开头的值用 =,复杂 JSON 用 @ 文件引用;文档见 https://pnp.github.io/cli-microsoft365/。