Предлагаю тех, кто еще задаст подобный вопрос, заставить отжиматься или делать что-нибудь в таком духе. Когда-то тема получения списка пользователей из AD была очень актуальна. Я даже писал какие-то скрипты на Visual Basic. Воды утекло много с тех пор. Сегодня мне этот вопрос задали опять.
Нужно было получить список пользователей из Active Directory с телефонными номерами. Просьба вызвала улыбку, т.к. я понятия не имел, как это сделать, главное — не хотелось напрягаться и сделать бы это самым простым способом. Такие просьбы – большая редкость.
В голову пришло несколько вариантов:
- поискать решение в Гугле
- попросить Васю
- использовать PowerShell
я выбрал последнее. Дело не в том, что я не доверяю Васе или Гуглу, а просто мне хотелось сделать еще меньше телодвижений, чтобы получить этот список. Я вспомнил, что в PowerGUI есть средства для просмотра AD и экспорта в файл.
Так и получилось, скопастив строчки из уже готового скрипта в PowerGUI:
function
func_getuser()
{
Get-QADUser -SizeLimit 0 -ErrorAction SilentlyContinue | Select-Object -property «Name»,«Office»,«PhoneNumber»
}
func_getuser | where { $_.‘Office’ -ne $null } | where { $_.‘PhoneNumber’ -ne $null }
И нажав пару кнопок в PowerGUI я получил CSV файл на выходе и отправил пользователю, пусть делает, что хотел в MS Excel.
Ну разве это не прогресс? Больше автоматизации, особенно готовой — больше времени на другие дела. Велосипед изобретать совсем не нужно. И кстати, вот вам и случай практического применения Power Shell, вернее PowerGUI.