Скрипт, который отправляет электронные письма через SMTP-сервер OUTLOOK - PullRequest
0 голосов
/ 05 марта 2020

У меня есть задача сделать скрипт в PowerShell, где мне нужно вывести из AD список имен, которые начинаются с буквы «А» с полным именем, именем пользователя и критериями даты создания. Затем экспортируйте список с пользовательскими заголовками и экспортируйте его в CSV-файл. Затем снова импортируйте CSV-файл и выведите на экран любого, кто работает более двух лет (полное имя). На данный момент, по моему мнению, скрипт выполнен правильно, потому что он работает. Теперь я довольно застрял, мне нужно, чтобы каждый пользователь в списке, который первым вышел, создал папку (независимо от того, где) и дал полные права доступа к папке - Я что-то сделал, но это кажется неправильным. Затем мне нужно отправить электронное письмо с таблицей, в которой указано полное имя и путь к папке, и что отправитель будет no@reply.com.

Код, который я написал:

 Get-ADUser -filter * -SearchBase "OU=meitavdash,OU=Users,DC=meitav,DC=co,DC=il"

    Get-ADUser -Properties whenCreated -Filter {samaccountname -like 'A*'} |Format-Table name,SamAccountName,whenCreated

    Get-ADUser -Properties whenCreated -Filter {samaccountname -like 'A*'} | Select-Object @{n='FullName';e={$_.Name}},@{n='UserName';e={$_.SamaccountName}},@{n='CreateDate';e={$_.WhenCreated}} |  export-csv -path c:\userexport.csv
    Get-ADUser -Properties whenCreated -Filter {samaccountname -like 'A*'} | where {$_.whencreated -le (Get-Date).AddYears(-2)}|Select-Object @{n='FullName';e={$_.Name}} 

    $sp=$((Get-Date).AddDays(-365*2)); Get-ADUser -Properties whenCreated -Filter {name -like "A*" -and whenCreated -ge $sp}|%{New-Item -Path "c:\temp" -ItemType Directory; icacls "c:\temp" /T /grant "$($_.samaccountname):(OI)(CI)F"

Ответы [ 2 ]

0 голосов
/ 05 марта 2020

Что касается этого ...

"моя проблема, я не знаю, как на самом деле создать таблицу с полным именем и путем к папке"

.. эта шляпа вам нужна?

Get-ADUser -filter * -SearchBase 'OU=meitavdash,OU=Users,DC=meitav,DC=co,DC=il'

Get-ADUser -Properties whenCreated -Filter {samaccountname -like 'A*'} | 
Format-Table name,SamAccountName,whenCreated

Get-ADUser -Properties whenCreated -Filter {samaccountname -like 'A*'} | 
Select-Object @{
n='FullName';e={$_.Name}},
@{n='UserName';e={$_.SamaccountName}},
@{n='CreateDate';e={$_.WhenCreated}} |  
export-csv -path c:\userexport.csv

Get-ADUser -Properties whenCreated -Filter {samaccountname -like 'A*'} | 
where {$_.whencreated -le (Get-Date).AddYears(-2)}|Select-Object @{n='FullName';e={$_.Name}} 

$sp=$((Get-Date).AddDays(-365*2))
Get-ADUser -Properties whenCreated -Filter {name -like "A*" -and whenCreated -ge $sp} | 
%{
    $PathUnc = (New-Item -Path 'c:\temp' -ItemType Directory).FullName
    icacls 'c:\temp' /T /grant "$($_.samaccountname):(OI)(CI)F"
} 
0 голосов
/ 05 марта 2020
...