Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Создание скрипта - фильтр содержимого .svc

Ответить
Настройки темы
PowerShell - Создание скрипта - фильтр содержимого .svc

Аватара для apelsinchik

Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


Доброго дня.
Помогите пожалуйста написать скрипт для работы с Powershell
Cитуация такая:
Eсть файл, который периодически редактируется отделом кадров (AD.csv)
B этом файле информация по пользователям из Activ Directory приблизительно в таком порядке :

sAMAccountName,AccountStatus,mail,displayName
testv,Enabled,testv@domain.com,Test Vika
vladt,Disabled,vladt@domain.com,Vlad Tovbis
yanp,Disabled,yanp@domain.com,Yan Petrov
ninai,Enabled,ninai@domain.com,Nina Ivanova


и т.д.
Hужно сделать так, чтоб из этого файла брались пользователи из столбика AccountStatus, которые помечены как Disabled и :
или записывались в отдельный файл
или чтоб пользователь под этим статусом деактивировался в Active Directory.

Уже 3 дня копаю интернет, но ничего не могу найти. Со скриптами не дружу, сорри .
Надеюсь на вашу помощь
Спасибо

Отправлено: 10:33, 17-07-2017

 

Ветеран


Сообщения: 1259
Благодарности: 861

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
Import-CSV AD.csv | Where {$_.AccountStatus -eq "Disabled"} | Foreach {Disable-ADAccount -Identity $_.sAMAccountName}

Последний раз редактировалось Kazun, 17-07-2017 в 10:50.

Это сообщение посчитали полезным следующие участники:

Отправлено: 10:37, 17-07-2017 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для apelsinchik

Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


Спасибо большое за быстрый ответ.

А можно деактивировать пользователя в Active Directory если нам не известен параметр sAMAccountName ?
Известен только параметр mail и Pager. Можно как то сделать запрос в AD , получить юзера подходящего по емайлу и деактивировать его, если параметр AccountStatus = Disabled в .svc?
Буду благодарен за скрипчик.

Pager,AccountStatus,mail,Name
2209,Enabled,testv@domain.com,Test Vika
9901,Disabled,vladt@domain.com,Vlad Tovbis
0111,Disabled,yanp@domain.com,Yan Petrov
5641,Enabled,ninai@domain.com,Nina Ivanova


И еще один вопрос. Можно в конце еще запилить, чтоб посылал уведомление на мыло, что скрипт отработал и сохранить отчет, кого деактивировал ?

Спасибо

Последний раз редактировалось apelsinchik, 18-07-2017 в 10:46.


Отправлено: 10:38, 18-07-2017 | #3


Ветеран


Сообщения: 1259
Благодарности: 861

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
Import-CSV AD.csv | Where {$_.AccountStatus -eq "Disabled"} | Foreach { Get-ADUser -Filter "pager -eq '$($_.pager)' -and mail -eq '$($_.mail)'" | Disable-ADAccount}
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:17, 18-07-2017 | #4


Аватара для apelsinchik

Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


Запилил вот такой скрипт...
Не могу найти как сделать, чтоб он еще маил отправлял через eXchange.
А так, он еще сохраняет список изменений внесенных в основной документ.

Код: Выделить весь код
Import-Csv d:\AD.csv | Where-Object {$_.AccountStatus -eq “Disabled”} | export-csv d:\ADD.csv
$data = import-csv d:\ADD.csv
Import-Module activedirectory

foreach ($line in $data)
{

    $mail = $line.mail
    $pager = $line.pager
 
 $user = Get-ADUser -filter {mail -eq $mail}

 if ($user -ne $null)
    {
      $user | Disable-ADAccount
      Write-Host "Attempting to disable user $mail : Success" -ForegroundColor green
    }
 else
    {
      Write-Host "Can't find user $mail in the catalog" -ForegroundColor red
    }   
}

Отправлено: 11:37, 18-07-2017 | #5


Ветеран


Сообщения: 1259
Благодарности: 861

Профиль | Отправить PM | Цитировать


Это сообщение посчитали полезным следующие участники:

Отправлено: 11:41, 18-07-2017 | #6



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Создание скрипта - фильтр содержимого .svc

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Создание скрипта по перезапуску краш-приложения vecheria@vk AutoIt 4 23-12-2016 10:44
PowerShell - Создание динамического скрипта для PowerShell AZABAZA Скриптовые языки администрирования Windows 1 18-11-2015 13:52
VBS/WSH/JS - создание скрипта для создание текстовика с именем учетки velsati Скриптовые языки администрирования Windows 0 01-04-2013 16:55
БП и ИБП - [решено] Не включается ИБП <SVC 600W> Recoom Прочее железо 8 21-10-2011 07:07




 
Переход