概述

本文将演示如何在必要的时候(例如在测试环境),通过PowerShell脚本批量删除Office 365的用户,首先需要通过Get-MsolUser的命令(并且配合筛选条件)获取到符合条件的用户列表,然后通过Remove-MsolUser的命令将其删除。

注意,删除操作会将用户放入到回收站,你还可以从回收站中对其进行恢复。但是要恢复相关的邮件,以及OneDrive网站等个人相关数据,可能还需要一定的时间。请慎重操作。

前提

要想运行如上提到的两个命令,需要在Windows 10的机器上面,安装如下的几个组件

1. 下载安装官方提供的Microsoft Online Service Sign-in Assistant for IT Professionals https://go.microsoft.com/fwlink/p/?LinkId=286152

2. 下载安装官方提供的Azure Active Directory Connection http://connect.microsoft.com/site1164/Downloads/DownloadDetails.aspx?DownloadID=59185

3.  请在本地用管理员身份打开PowerShell,并运行命令 Install-Module -Name AzureAD

进行后续操作之前,需要准备好Office 365 管理员账号,并且连接上MsolService,如下图所示

操作

首先,我们来看一下Get-MsolUser这个命令

https://docs.microsoft.com/en-us/powershell/module/msonline/get-msoluser?view=azureadps-1.0

这里的关键在于如何过滤出来我们想要操作的用户,这个命令带有几个有趣的参数

[-City <String>] [-Country <String>] [-Department <String>] [-DomainName <String>] [-EnabledFilter <UserEnabledFilter>][-SearchString <String>]

这些参数都可以用来作为过滤的条件,而且这个过滤是在服务器端发生的。

需要注意的是SearchString,只支持简单的模糊匹配,它会在displayname和alias中做匹配。

有时候,我们可能需要根据用户的创建时间进行筛选。目前没有看到这方面的参数。但可以通过下面的方式来解决

Where-Object {$_.WhenCreated –gt “6/16/2017”}

这个过滤是在本地过滤的,就是把所有用户读取到了本地缓存中,然后再过滤。上述表达式的意思是,找到6/16/2017后创建的用户。

使用$users保存了这个用户列表后,可以进一步操作Remove-MsolUser命令来进行删除

$users | Remove-MsolUser –Force

如何使用PowerShell批量删除Office 365的用户的更多相关文章

  1. 使用Powershell链接到Office 365

    今天主要讲使用Powershell管理Office 365 可以分为office365用户管理,Exchange Online的管理等 1. 使用Powershell 链接到office 365 用户 ...

  2. 介绍Office 365 中文用户社区 4.0

    本文于2017年3月18日首发于LinkedIn,原文链接在这里 为了给广大用户提供一个可以自由交流.切磋技术的平台,微软和其他一些国际知名的大型软件公司一样,都有创建用户社区(Community,或 ...

  3. SharePoint PowerShell 批量删除遗弃视图

    前言 最近,给SharePoint升级了,然后发现,有一大批视图不需要了,而且,名字是一样的,想着怎么清理,然后,就想到了powershell. powershell 示例: $siteUrl = & ...

  4. 一些Office 365的问题收集

    1. 按照MS的最佳实践, 应该是先有本地域, 然后再有Office 365. 但是我们公司刚好相反, 于是按照前面的文章做完了硬关联, 但是现在发现对于那些原本就在Office 365上的用户的Pr ...

  5. 设置Office 365邮箱默认发送和接收邮件大小限制

    Office 365默认的 35MB 的邮件大小限制.Office 365 最大是支持 150MB 的邮件体积的. 我们只需用 Windows Powershell 连接 Office 365 ,然后 ...

  6. Office 365开发概述及生态环境介绍(二)

    本文于2017年3月19日首发于LinkedIn,原文链接在这里 在上一篇 文章,我给大家回顾了Office发展过来的一些主要的版本(XP,2003,2007,2013等),以及在Office客户端中 ...

  7. 使用Office 365前,企业必须要知道的10件事

    目前的市场上充斥着很多关于微软Office 365的炒作,相信厂商.客户或者企业的都有自己不同的考虑.Office 365是微软云版本的Office,用户可以通过互联网创建一个帐户,付款.下载应用安装 ...

  8. Office 365管理中心门户

    一.使用Office 365管理员账户登陆到由世纪互联运营的Office 365 登陆地址 https://portal.partner.microsoftonline.cn 1.登陆完成后,选择左上 ...

  9. Office 365 系列二 ------- 如何批量部署Office 客户端

    针对于第一篇文章所讲的,我们最用使用用户可以单个点击进行安装,但是如果我们终端用户太多的情况,不可能大家都点击单个文件进行安装了,这样子既耗费时间也耗费 公司的网络带宽,那么我们可以采取离线下载的方式 ...

随机推荐

  1. git操作手册

    git教案链接:https://git-scm.com/book/zh/v2 1.1 起步 - 关于版本控制 于是分布式版本控制系统(Distributed Version Control Syste ...

  2. vue使用tips记录

    用vue已经很久啦,这里记录一下一些我觉得比较实用的小tips:

  3. Flask里面的cookie的基本操作

    #cookie相关操作,依赖于make_response #调用cookie依赖request模块 from flask import Flask,make_response,request #建立对 ...

  4. Vue.js简单记录

    官网:https://cn.vuejs.org/ https://cn.vuejs.org/v2/api/#methods v-bind 缩写 <!-- 完整语法 --> <a v- ...

  5. CF1101D GCD Counting

    题目地址:CF1101D GCD Counting zz的我比赛时以为是树剖或者点分治然后果断放弃了 这道题不能顺着做,而应该从答案入手反着想 由于一个数的质因子实在太少了,因此首先找到每个点的点权的 ...

  6. Java基础3-数组操作;类概述

    昨日内容回顾 数据类型 基本数据类型 1) byte, short, int, long, float, double 2) boolean[true, false] 3) char 100: 默认为 ...

  7. Pytorch 细节记录

    1. PyTorch进行训练和测试时指定实例化的model模式为:train/eval eg: class VAE(nn.Module): def __init__(self): super(VAE, ...

  8. mysql进制之间的转换

    1.十进制转换成二进制 select bin(5); 2.十进制转换成八进制 select oct(5); 3.十进制转换成十六进制 select hex(5); 4.二进制转换成十进制 select ...

  9. shell脚本 统计一段程序运行时间【转】

    转自:https://bbs.csdn.net/topics/391943383#include <stdio.h> #include <stdlib.h> #include ...

  10. Log4PHP日志库使用

    库下载地址: http://logging.apache.org/log4php/download.html 当前测试使用的版本为2.3.0 1.解压缩下载的压缩文件apache-log4php-2. ...