【问题标题】:Creating a powershell script to unlock AD accounts创建用于解锁 AD 帐户的 powershell 脚本
【发布时间】:2022-10-24 05:37:53
【问题描述】:
我是 Powershell 的新手,我正在尝试创建一个快速脚本,我可以通过单击一个按钮以管理员身份运行该脚本以首先显示当前锁定的帐户,然后在命令行中有一个预先编写的文本,我可以在其中只需输入我要解锁的 SAM 帐户名称,因为我不想一次全部解锁。
我的问题是,如何让 PS 运行命令,然后将文本预先写入命令行以填充其余部分并执行?
Search-ADAccount -lockedout | Select-Object Name, SamAccountName
Unlock-ADAccount -Identity samAccountName
【问题讨论】:
标签:
powershell
active-directory
【解决方案1】:
交互式工作时,读取主机是一种选择。
例如
Search-ADAccount -lockedout | Select-Object Name, SamAccountName
$samAccountName = Read-Host -Prompt 'Enter the samAccountName of the account you wish to unlock'
if($samAccountName) {
Unlock-ADAccount -Identity $samAccountName
}
【解决方案2】:
为了提示用户解锁的文本,您可以使用read-host 命令:
您可以一次解锁多个帐户,如下所示:
Search-ADAccount -lockedout | Select-Object Name, SamAccountName
$Samaccountnames = Read-Host "Enter SamAccountNames of accounts to unlock separated by comma ','"
$Samaccountnames =$Samaccountnames.split(",")
$Samaccountnames | % {Unlock-ADAccount -Identity $_}
【解决方案3】:
此命令将解锁域中的所有 AD 用户。
如果要添加确认添加 -Confirm
Search-ADAccount -Lockedout | Unlock-AdAccount -Confirm
如果不:
Search-ADAccount -Lockedout | Unlock-AdAccount
此命令将最终锁定所有锁定的用户帐户:
Search-ADAccount -lockedout | Select-Object Name, SamAccountName