PowerShell修改AD USER的Logonworkstations

46次阅读
没有评论

首先获取需要修改的用户

如果要修改指定的几个用户:

$users = "c0001", "c0002", "c0003" | ForEach-Object -Process { Get-ADUser -Filter { samaccountname -eq $_ } -Properties logonworkstations }

或者修改所有用户

$users = Get-ADUser -Filter {logonworkstations -like "*"} -Properties logonworkstations

删除某一台计算机(删除PC8888)

foreach ($user in $users)
{
$userworkstations = [System.Collections.ArrayList]$user.logonworkstations.split(",")
$userworkstations.Remove("PC8888")
$pc = $userworkstations -join ","
Set-ADUser -Identity $user -LogonWorkstations $pc
}

替换某一台(PC9999替换为PC1111)

$users | ForEach-Object -Process {
Set-ADUser -Identity $_.samaccountname -LogonWorkstations $_.logonworkstations.replace("PC9999", "PC1111")
}

增加一台(增加PC9999)

$users | ForEach-Object -Process
{
Set-ADUser -Identity $_.samaccountname -LogonWorkstations ($_.logonworkstations + ",PC9999")
}

正文完
 
评论(没有评论)