在活动目录的管理中会遇到对用户进行批量操作的问题,例如,在升级操作系统时或在刚刚使用活动目录时,管理人员需要批量的添加或删除用户帐户。
批量导入/导出域用户可以使用Windows服务器中的csvde.exe或ldifde命令。
在Windows Server 2003中需要安装Support tools(在Server 2003的安装光盘中)才可以使用这两个命令。
在Windows Server 2008中可以直接在命令行或PowerShell中,通过输入csvde命令或ldifde命令来使用。
使用csvde命令可加添加域用户帐户,但不能使用csvde命令删除或修改域用户帐户,使用笨的方法可以先将数据导出,在修改后然后再导入。使用ldifde命令可以对一些用户的属性进行修改,或者删除用户。csvde命令导出的是.csv格式的文件,可以使用Excel很方便的进行查找到替换。使用ldifde命令导出的是.ldf格式的文件,其也可以使用文本编辑工具(如记事本)打开,然后进行一些简单的替换等工作。下面我们分别就域用户的批量导入和域用户的批量导出进行讲解。
csvde /? csvde命令的帮助信息
ldifde /? ldifde命令的帮助信息
在两个命令的命令行帮助信息中可以先了解一下如何使用,其中也有一些关键的信息如:
csvde命令的示例:
示例: 简单导入当前域
csvde -i -f INPUT.CSV
示例: 简单导出当前域
csvde -f OUTPUT.CSV
ldifde命令的示例:
示例: 简单导入当前域
ldifde -i -f INPUT.LDF
示例: 简单导出当前域
ldifde -f OUTPUT.LDF
因个人认为ldfide的命令稍强大一些,所以,以下的批量导入/导出域用户帐户操作以ldife为例:
批量导出域用户帐户
ldifde -f c:\exportuser.ldf -s 服务器 -d "dc=域,dc=com" -p subtree -r "(&(objectCategory=person)(objectClass=User)(givenname=*))" -l "cn,givenName,objectclass,samAccountName"
将上面的这段代码输入到命令行中,回车即可将域中所有的用户帐户信息导出在一个名为exportuser.ldf的文件中。在上面的代码中c:\exportuser.ldf是保存的路径和文件名(实际上文件名可以是任意的,都可以使用记事本打开),服务器可以是域控的计算机名(如:dc.itcat.cn),域是指域名,如itcat.cn中的域名为itcat
命令运行后将会有以下提示:
连接到“dc.exchangecn.com”
用 SSPI 作为当前用户登录
将目录导出到文件 d:\Exportuser.ldf
搜索项目...
写出项目...
导出了 3 个项目
命令已成功完成
这便是已经把域中所有的用户帐户都成功的导入到的D盘的Exportuser.ldf文件中。
批量导入域用户帐户,相对于批量导出域用户帐户来讲,批量导入域用户帐户要简单的多,只需输入以下命令,将上面提到的已导出的Exportuser.ldf文件导入即可,
使用的命令是:ldifde -i -f d:\Exportuser.ldf,
其中的d:\Exportuser.ldf是上面导出域用户帐户时的那个文件。
输入完上面的命令后:
连接到“dc.exchangecn.com”
用 SSPI 作为当前用户登录
从“d:\Exportuser.ldf”文件导入目录
加载条目....
成功地修改了 3 个条目。
命令已成功完成
在完成这导入的操作后,所有的用户默认的都是停用状态,将所有的用户启用即可。另,使用csvde命令的好处就在于你可以使用Excel打开CSV格式的文件后添加一些更多的定义,但这需要大家一起来研究一下,有什么使用方面的问题也欢迎大家到iT猫itcat.cn交流。
有关于活动目录域用户的导入/导出问题大家还可以参考微软提供的相关文章,其中还包括了,如休导出组织单位和某个用户帐户等信息。
谢谢赞赏
(微信扫一扫或长按识别)