2012-09-11 30 views
1

我正在构建一个脚本以基于CSV创建AD用户帐户(迄今为止没有特别的; o)。我想添加的一个特定参数是“从xxx复制”,从而新帐户将成为现有帐户的副本(就像AD控制台中的“复制帐户”选项一样)使用Powershell复制活动Direcotry用户帐户

这可以实现吗?怎么样?

回答

3

这似乎很简单。请在CSV一列名为 “CopyFromAccount” 什么的。

然后,Import-CSV | Foreach循环抛出一个if/else语句的过程。

If ($_.CopyFromAccount -ne $null) { 
    ... insert code to copy AD account here ... 
} 
Else { 
    ... insert code to use other parameters on this line to create the account ... 
} 

有有几个可用的例子在互联网上用于复制PowerShell中的用户。以下是使用Quest AD cmdlet的示例:http://dmitrysotnikov.wordpress.com/2008/01/10/copy-ad-accounts-with-powershell/

要从Microsoft而不是Quest使用New-ADUser cmdlet,请查看实例参数。有关详细信息,请访问Get-Help或以下URL:http://technet.microsoft.com/en-us/library/ee617253.aspx

它“指定要用作新用户对象模板的用户对象实例。”

,并使用像这样:

$userInstance = Get-ADUser -Identity "saraDavis" 

New-ADUser -SAMAccountName "ellenAdams" -Instance $userInstance -DisplayName "EllenAdams" 
+0

我还发现。我正在寻找一种非Quest方法:)(我更喜欢使用标准工具集,所以我知道它每分钟都会运行)。我正在寻找“插入代码复制”:)我一直在寻找,但没有找到一个实际工作的例子(似乎没有-copyFrom参数或Copy-AdUser cmdlet)。我目前正在解决此问题(仅从copyFrom帐户中选取所选值,而不是复制Wole帐户) – Walter81

+0

修订答案,以提供使用New-ADUser复制用户的示例代码。 –

+0

嗨再次克里斯 我的不好:我没有阅读你的第一篇文章(和手册)够好,我不知何故错过了最后一部分。实例参数正是我需要的。感谢您的帮助! – Walter81