Я очень новичок в PowerShell, поэтому, пожалуйста, простите, как я это говорю, если это не ясно.Чтение из нескольких текстовых файлов и электронной почты получателю
У меня есть команда powershell, которая будет читать строку в текстовом файле и отправлять ее получателю. Как вы можете видеть в приведенном ниже коде, он ищет файл, который содержит «ama» - что он делает хорошо.
Однако иногда в каталоге есть несколько файлов с именем «ama» в имени файла. Я бы хотел, чтобы он отправил электронное письмо для каждого файла с именем «ama» в названии. Либо индивидуальное электронное письмо для каждого файла, либо сводка, которая читает одну и ту же строку во всех файлах «ama» в каталоге.
Можно ли это сделать?
Большое спасибо.
$a=Get-Content -Path "S:\Vecta\Test\*ama.*" | select -first 1 -skip 9
$a = $a.substring(3,16)
$b = "Imported"
$msg.Body=$a
#$msg.Body=Get-Content -Path "S:\Vecta\Test\*ama.*" | select -first 1 -skip 9 | Out-String
#Message Subject
$msg.Subject=$b
$smtp.Send($msg)
#$attachment.Dispose();
$msg.Dispose();
Спасибо, я попытался это, но получаю ошибку follwing: Get-Content: Невозможно привязать аргумент параметра «Путь», потому что она равна нулю. В C: \ Scripts \ AmaEmail.ps1: 27 char: 21 + $ a = Get-Content <<<< $ file | select -first 1 -skip 9 + CategoryInfo: InvalidData: (:) [Get-Content], ParameterBindingValidationException + FullyQualifiedErrorId: ParameterArgumentValidationErrorNullNotAllowed, Microsoft.PowerShell.Commands.GetContentCommand – JMar
Работает, см. мой пример. Вы, должно быть, сделали что-то не так. – megamorf
Не уверен, почему вчера это не сработало, но сейчас я делаю именно то, что хочу. Благодаря! – JMar