Question
Envoyer un mail avec PJ
- Toper
- Auteur du sujet
- Hors Ligne
- Membre premium
Réduire
Plus d'informations
- Messages : 145
- Remerciements reçus 0
il y a 4 ans 5 mois #29406
par Toper
Powershell: la vie est belle
Envoyer un mail avec PJ a été créé par Toper
Bonjour à tous,
j'essaie en vain d'envoyer un mail contenant une PJ résultant d'un GCI. Le mail part bien, mais aucune PJ n'est attachée.
Mon script:
[code:1]if (@(Get-ChildItem $lstfiles | Where-Object {$_.CreationTime -gt (Get-Date).Date } | Select-String -Pattern 'ORA-').Count -gt 0)
{ Get-ChildItem $lstfiles | Where-Object {$_.CreationTime -gt (Get-Date).Date } | Select-String -Pattern 'ORA-' |out-file \"C:\xxxxx\file.csv\" -Encoding utf8 | Send-MailMessage -Attachments \"C:\xxxxx\file.csv\" -SmtpServer \"smtpserver\" -from \"sender@domain.com\" -To \"recipient@domain.com\" -subject \"SQL Erreurs\"
} else { Write-Host \"Pas d'erreurs\"
}
[/code:1]
Je sais que ça doit être tout c** mais je ne trouve pas...
j'essaie en vain d'envoyer un mail contenant une PJ résultant d'un GCI. Le mail part bien, mais aucune PJ n'est attachée.
Mon script:
[code:1]if (@(Get-ChildItem $lstfiles | Where-Object {$_.CreationTime -gt (Get-Date).Date } | Select-String -Pattern 'ORA-').Count -gt 0)
{ Get-ChildItem $lstfiles | Where-Object {$_.CreationTime -gt (Get-Date).Date } | Select-String -Pattern 'ORA-' |out-file \"C:\xxxxx\file.csv\" -Encoding utf8 | Send-MailMessage -Attachments \"C:\xxxxx\file.csv\" -SmtpServer \"smtpserver\" -from \"sender@domain.com\" -To \"recipient@domain.com\" -subject \"SQL Erreurs\"
} else { Write-Host \"Pas d'erreurs\"
}
[/code:1]
Je sais que ça doit être tout c** mais je ne trouve pas...
Powershell: la vie est belle
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
Réduire
Plus d'informations
- Messages : 6302
- Remerciements reçus 68
il y a 4 ans 5 mois #29411
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Envoyer un mail avec PJ
Salut,
gregmurf écrit:
Ton code demande ceci :
[code:1]
|out-file \"C:\xxxxx\file.csv\" -Encoding utf8 | Send-MailMessage
[/code:1]
mais Out-file propose cela :
Une solution serait de créer un proxy qui émet le nom de fichier, mais avec un proxy je suis curieux de voir si la libération de ressources (côté dotnet) se fait correctement, car le principe du pipeline est d'émettre + objets.
Le plus simple étant de passer par une variable intermédiaire.
gregmurf écrit:
Bah il faut revenir aux bases, lire la doc par exemple (ceci dit sans méchanceté).Je sais que ça doit être tout c** mais je ne trouve pas...
Ton code demande ceci :
[code:1]
|out-file \"C:\xxxxx\file.csv\" -Encoding utf8 | Send-MailMessage
[/code:1]
mais Out-file propose cela :
Le deux cmdlet ne peuvent pas communiquer, il s'aiment pasOutputs
None
Out-File does not generate any output.
Une solution serait de créer un proxy qui émet le nom de fichier, mais avec un proxy je suis curieux de voir si la libération de ressources (côté dotnet) se fait correctement, car le principe du pipeline est d'émettre + objets.
Le plus simple étant de passer par une variable intermédiaire.
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Toper
- Auteur du sujet
- Hors Ligne
- Membre premium
Réduire
Plus d'informations
- Messages : 145
- Remerciements reçus 0
il y a 4 ans 5 mois #29421
par Toper
Powershell: la vie est belle
Réponse de Toper sur le sujet Re:Envoyer un mail avec PJ
Pas de soucis.
J'ai coupé mon script en deux: il écrit le fichier. Puis je sors du \"if\" et j'envoi le mail.
Merci
J'ai coupé mon script en deux: il écrit le fichier. Puis je sors du \"if\" et j'envoi le mail.
Merci
Powershell: la vie est belle
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.069 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- Envoyer un mail avec PJ