Я использовал их, чтобы вывести список заблокированных пользователей в моем домене и предложить мне ввести имя samaccountname, чтобы разблокировать нужного:
Я сделал это с 3 файла.
первый - это ps1, чтобы перечислить их все
import-module activedirectory
search-adaccount -lockedout | select name, samaccountname, OU
второй - это другой файл PS1:
$user = Read-Host "Enter user account (SAMACCOUNTNAME) to unlock or press ENTER to refresh list"
Search-ADAccount -LockedOut | Where {$_.samaccountname -eq $user} | Unlock-ADAccount
и для выполнения вышеуказанных файлов я использую файл .bat:
:loop
powershell.exe -ExecutionPolicy Bypass -File c:\ps\lockedlist.ps1
powershell.exe -ExecutionPolicy Bypass -File c:\ps\unlock.ps1
cls
goto loop
и когда я запускаю его ... в нем отображаются все заблокированные пользователи, и я могу скопировать и вставить каждое имя samaacount, чтобы разблокировать их
НО проблема в том, что когда я хочу сделать это с ОДНЫМ файлом ps1, это не работает. он просто запрашивает имя samaccountname, но не перечисляет его
import-module activedirectory
search-adaccount -lockedout | select name, samaccountname, OU
$user = Read-Host "Enter user account (SAMACCOUNTNAME) to unlock or press ENTER to refresh list"
Search-ADAccount -LockedOut | Where {$_.samaccountname -eq $user} | Unlock-ADAccount
я знаю .bat файл будет почти таким же ...
спасибо всем, кто читает и помогает.