Итак, я хочу использовать powershell, чтобы вывести список всех пользователей ADuse в основное интерактивное меню, чтобы можно было выбрать и удалить конкретного пользователя.
Это то, что я получил до сих пор, и это все пользователи и позволяет мне выбрать конкретный. Но Remove-ADUser -identity $ouEntry
(on-line: 18) запускается сразу после запуска сценария и выбирает всех пользователей для удаления, прежде чем я могу выбрать конкретного. Мне нужно, чтобы он работал после того, как я выбрал опцию, и с правильным пользователем. Я искал в меню переключения, но с плохими результатами, так как я не могу встраивать ForEach должным образом.
Ценю всю помощь. Я также открыт для альтернативных решений
Clear-Host
$ouCounter = 1
$MenuArray = @()
$DomainName = ($env:USERDNSDOMAIN).split('.')[0]
$Tld = ($env:USERDNSDOMAIN).split('.')[1]
Write-Host "`nChoose the user you want to delete"
foreach ($ouEntry in ((Get-ADUser -SearchBase "DC=$DomainName,DC=$Tld" -Filter *).name))
{
$(" "+$ouCounter+".`t"+$ouEntry)
$ouCounter++
$MenuArray += $ouEntry + " was removed"
$MenuArray += Remove-ADUser -identity $ouEntry
}
do
{ [int]$menuSelection = Read-Host "`n Enter Option Number"}
until ([int]$menuSelection -le $ouCounter -1)
$MenuArray[ $menuSelection-1]
Вывод
Choose the user you want to delete
1. Administrator
2. Guest
3. user1
4. user2
5. user3
6. user4
7. user5
8. user6
9. Jon Snow
Enter Option Number:
Предыдущая ссылка: Создание динамического меню в Powershell