【发布时间】:2020-11-09 12:24:39
【问题描述】:
我有一个 powershell 脚本来删除存储在变量 $User 下的用户,该变量取自命令行中的用户输入。如何指定多个用户并删除所有用户?
脚本在下面
$User = Read-Host - Prompt 'Enter user name'
Remove-ADUser $User
Write-Host "'$user' account has been removed press any key to close..."
$Host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")
【问题讨论】:
-
哇,这是等待意外的代码。你根本没有检查用户的输入,你没有解释他们需要输入登录名,你只是假设他们输入的是正确的用户删除(这是一种破坏性操作)。真的,你应该认真考虑一下!
-
这不是一般用途的脚本,我将是唯一使用它的人,并且只有我知道需要删除的用户名
-
@Theo 如果我要检查他们是否正确输入了用户名,添加数据验证以确保以正确格式输入用户名的最佳方法是什么? Powershell 脚本的新手。
-
@MacHooper 找到正确帐户的最佳方法是首先检索帐户并验证它是否正确。有多种方法可以编写验证脚本,但这完全取决于 AD 的结构以及您构建信息的方式。在下面的 4 步脚本中,我在实际删除之前首先获得了测试结果(它找到了哪个帐户?)。一旦您确定代码只会找到并删除目标帐户,就有很多方法可以改进脚本(例如用于自动化目的)
标签: powershell scripting active-directory windows-scripting