Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

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

Ответить
Настройки темы
PowerShell - [решено] Оправка отчета о копировании файлов, на почту.

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


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

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


День добрый. Мне тут ТЗ выдали на работе: написать скрипт на PowerShell чтобы он копировал *.xls файлы из одной папки в другую, при том перед началом копирования нужно получить дату изменения файлов, засунуть все это добро в e-mail и отправить отчет на почту мне.

1. Как получить дату текущего файла?

2. Как отправить почту с gmail-аккаунта, на такой же?

Отправлено: 18:54, 25-09-2011

 

Ветеран


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

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


Код: Выделить весь код
$body = dir C:\Folder1 *.xls | copy -dest C:\Folder2 -PassThru | select name,LastWriteTime | Out-String
send-mailmessage -to "User01 <user01@example.com>" -from "User02 <user02@example.com>" -subject "Copy Files" -body $body -SmtpServer smtp.gmail.com -UseSsl -Credential "User01"
Если использовать нестандартный порт(отличный от 25),то используйте:
Код: Выделить весь код
$EmailFrom = "user02@example.com"
$EmailTo = "user01@example.com" 
$Subject = "Copy Files" 
$SMTPServer = "smtp.gmail.com" 
$SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 587) 
$SMTPClient.EnableSsl = $true 
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential("username", "password"); 
$SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body)

Последний раз редактировалось Kazun, 25-09-2011 в 20:55.

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

Отправлено: 20:45, 25-09-2011 | #2



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

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


Аватара для dosperados

Пользователь


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

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


Kazun, Молоток) Четко и красиво!

Отправлено: 11:10, 26-09-2011 | #3


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


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

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


Kazun, да, реально четко и красиво, спасибо

Отправлено: 11:40, 26-09-2011 | #4


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


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

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


У меня тут ошибка вывалилась

Код: Выделить весь код
Исключение при вызове "Send" с "4" аргументами: "Сбой при отправке сообщения эле ктронной почты.
" C:\Users\****\Desktop\sendmail.ps1:10 знак:17 
       + $SMTPClient.Send <<<< ($EmailFrom, $EmailTo, $Subject, $Body)    
       + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException     
       + FullyQualifiedErrorId : DotNetMethodException

Отправлено: 13:43, 26-09-2011 | #5


Ветеран


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

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


Проверьте параметры,у меня все нормально работает.

Код: Выделить весь код
$Body = gps | Out-String
$EmailFrom = "sergey.boris@gmail.com"
$EmailTo = "myname@yandex.ru"
$Subject = "List of Processes"
$SMTPServer = "smtp.gmail.com"
$SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 587)
$SMTPClient.EnableSsl = $true
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential("sergey.boris", "Pa$$w0rd")
$SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body)
$ou =new-object -com outlook.application

PS  >  $ou.GetNamespace("Mapi").GetDefaultFolder(6).items | select -skip 1 Subject,SenderName

Subject                                                     SenderName
-------                                                     ----------
List of Processes                                           sergey.boris@gmail.com

Последний раз редактировалось Kazun, 26-09-2011 в 14:09.

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

Отправлено: 14:04, 26-09-2011 | #6


Ветеран


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

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


Kazun, скажите пожалуйста:

1) воспринимает ли у Вас командлет «Send-MailMessage» параметр «-From» именно в виде «DisplayName <user@example.com>»?
2) тот же вопрос и по четырёхаргументному методу «.Send(string, string, string, string)» класса «System.Net.Mail.SmtpClient»: воспринимает ли он у Вас второй параметр («From») в виде «DisplayName <user@example.com>»?

Отправлено: 12:13, 27-09-2011 | #7


Ветеран


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

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


1)Да.
Код: Выделить весь код
PS >  Send-MailMessage -From "TestUser <xxx@yandex.ru>" -To "NarodTest <yyy@narod.ru>" -Subject "Tests <> in Send-MailMessage" -Body "Ahtung" -SmtpServer smtp.yandex.ru 
PS >  $ou.GetNamespace("Mapi").GetDefaultFolder(6).Items | select -skip 1 To,subject,SenderEmailAddress,SenderName

To                            Subject                       SenderEmailAddress            SenderName
--                            -------                       ------------------            ----------
NarodTest                     Tests <> in Send-MailMessage  xxx@yandex.ru           	  TestUser
2)Нет.

Отправлено: 13:09, 27-09-2011 | #8


Ветеран


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

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


Kazun, спасибо, ясно.

Отправлено: 13:58, 27-09-2011 | #9


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


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

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


Kazun, Огромное спасибо Все заработало, просто у меня путь к папке содержал пробелы, я засунул путь в переменную все заработало))))

Отправлено: 16:06, 03-10-2011 | #10



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
FTP/File - Ошибка при копировании файлов на FTP. st031 Сетевые технологии 3 25-06-2008 10:30
зависет при копировании файлов на винт flatline Непонятные проблемы с Железом 23 26-04-2008 21:13
При копировании файлов падает сеть nnnn8 Сетевые технологии 1 09-12-2004 00:15
XP ДИКО тормозит при копировании файлов по сети >:((( Mr666 Сетевые технологии 1 27-09-2004 21:04
Пропало много файлов при копировании. Help, please... ElenUK Microsoft Windows 2000/XP 7 07-09-2004 17:14




 
Переход