Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] выташить емайл аддресс из Оутлука и записать в текст файл (http://forum.oszone.net/showthread.php?t=287133)

rufat_4 28-08-2014 09:47 2395211

выташить емайл аддресс из Оутлука и записать в текст файл
 
Доброе время суток!
помогите плз,
нужен скрипт который вытащит существующие емайл адреса из оутлука и запишет в текст файл.
будет CSV который будет лежать на файл сервере и рассшарен , и записование в этот файл нужен в следующем формате:

samaccountname,emailadress1,emailsaddress2
john,donj@example.com,null
johnsmith,jsmit@example.com,johnn@mail.com

и так далее, возможно ли такое? замечу что , на всех клиентский машинах оутлук настроен по POP/SMTP , нужен именно емайл адресса (под котором пользователь аутентифицируются) - а не имя профайла или имя сервера ит.п.

спасибо всем заранее ..

rufat_4 29-08-2014 17:06 2395860

сделал следующий скрипт, вдруг кому то понадобиться.


Код:

$user = Import-Csv \\dc01.domain.lan\migratereport$\emailaddress.txt | where  `
{$_.samaccountname -eq "$env:username"}
if ($user) {break}
      else  {
$mail = New-Object -ComObject Outlook.Application
$accounts = $mail.session.accounts | %{Write-Output $_.smtpaddress}
if (($accounts | measure).count -eq '1') {
$env:username+','+$accounts  | Add-Content -Path `
 \\dc01.domain.lan\migratereport$\emailaddress.txt } 
elseif (($accounts | measure).count -eq '2') {
$env:username+','+$accounts[0]+','+$accounts[1] | Add-Content -Path `
\\domain.lan\migratereport$\emailaddress.txt}
else {
$env:username+','+'null' | Add-Content -Path `
 \\dc01.domain.lan\migratereport$\emailaddress.txt}
(Get-Process outlook*).kill()
}



Время: 19:52.

Время: 19:52.
© OSzone.net 2001-