在Windows Server 2003 R2环境中,使用Powershell v2.0,如何复制Set-QADUser的功能来更新Active Directory中的用户属性,如他们的电话号码和标题?使用Powershell更新Active Directory中的Active Directory用户属性
这里的技巧是,我想这样做而不依赖于Set-QADUser,但我没有选择使用Server 2008的commandlets。
谢谢。
在Windows Server 2003 R2环境中,使用Powershell v2.0,如何复制Set-QADUser的功能来更新Active Directory中的用户属性,如他们的电话号码和标题?使用Powershell更新Active Directory中的Active Directory用户属性
这里的技巧是,我想这样做而不依赖于Set-QADUser,但我没有选择使用Server 2008的commandlets。
谢谢。
来自各地的互联网凑合的东西放在一起,我想出了这个...
function Get-ADUser([string]$samid=$env:username){
$searcher=New-Object DirectoryServices.DirectorySearcher
$searcher.Filter="(&(objectcategory=person)(objectclass=user)(sAMAccountname=$samid))"
$user=$searcher.FindOne()
if ($user -ne $null){
$user.getdirectoryentry()
}
}
$user = Get-ADUser 'UserName'
# Output all properties
$user.psbase.properties
# Change some properties
$user.title = 'New Title'
$user.telephoneNumber = '5555551212'
$user.SetInfo()
# Output the results
$user.title
$user.telephoneNumber
更多信息
您将需要在PowerShell中使用ADSI objects。语法看起来与vbscript相似,因为您使用的是相同的组件。
您可以使用ADSI和PowerShell以及其他几种处理方法做很多事情。例如,如果您需要设置一个密码,您可以使用: $ user.psbase.Invoke(“SetPassword”,“PasswordGoesHere”) $ user.psbase.CommitChanges() 有用的,如果你想剧本创作的新用户帐户。 – Jonny 2010-02-05 10:30:51