Question
Script ne fonctionne pas en tâche planifiée
- Toper
- Auteur du sujet
- Hors Ligne
- Membre premium
Réduire
Plus d'informations
- Messages : 145
- Remerciements reçus 0
il y a 3 ans 6 mois - il y a 3 ans 6 mois #30086
par Toper
Powershell: la vie est belle
Script ne fonctionne pas en tâche planifiée a été créé par Toper
Bonjour à tous,
j'ai un script PowerShell qui fonctionne très bien lorsqu'il est lancé via ISE mais qui ne fonctionne plus lorsqu'il est lancé par le planificateur de tâches...
Ce script commence par importer le module ActiveDirectory, puis fait différentes vérifications (date d'expiration du mot de passe, comptes bloqués/verrouillés, etc...)
Et il envoi un mail lorsque la date d'expiration est dans x jours.
Sur un même PC ==> lancé manuellement je reçois la notification ==> lancé en tâche planifiée je ne reçois rien.
Je n'ai pas d'erreur dans l'historique du planificateur.
Auriez-vous une idée ?
Je paramètre la tâche avec dans "Programme/script: C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe
Et dans les arguments: -noprofile -NoExit -file "chemin_vers_le_script.ps1"
Merci.
j'ai un script PowerShell qui fonctionne très bien lorsqu'il est lancé via ISE mais qui ne fonctionne plus lorsqu'il est lancé par le planificateur de tâches...
Ce script commence par importer le module ActiveDirectory, puis fait différentes vérifications (date d'expiration du mot de passe, comptes bloqués/verrouillés, etc...)
Et il envoi un mail lorsque la date d'expiration est dans x jours.
Sur un même PC ==> lancé manuellement je reçois la notification ==> lancé en tâche planifiée je ne reçois rien.
Je n'ai pas d'erreur dans l'historique du planificateur.
Auriez-vous une idée ?
Je paramètre la tâche avec dans "Programme/script: C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe
Et dans les arguments: -noprofile -NoExit -file "chemin_vers_le_script.ps1"
Merci.
Powershell: la vie est belle
Dernière édition: il y a 3 ans 6 mois par Toper.
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 3 ans 6 mois #30087
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Script ne fonctionne pas en tâche planifiée
Salut,
>>je reçois la notification
je pense que tu dois détailler ce traitement.
Comment tu notifies ?
>>je reçois la notification
je pense que tu dois détailler ce traitement.
Comment tu notifies ?
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 3 ans 6 mois #30088
par Toper
Powershell: la vie est belle
Réponse de Toper sur le sujet Script ne fonctionne pas en tâche planifiée
ok je vais essayer de poster le script
Powershell: la vie est belle
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 3 ans 6 mois - il y a 3 ans 6 mois #30089
par Toper
Powershell: la vie est belle
Réponse de Toper sur le sujet Script ne fonctionne pas en tâche planifiée
#Import AD Module
Import-Module ActiveDirectory -ErrorAction
$TestDate = (get-date).adddays(354).ToLongDateString()
$To = "dets.mail@domain.com
$MailSender = " Ne_Pas_Répondre <noreply@domain.com>"
$Subject = 'Expiration de mot de passe'
$Body1 = 'Bonjourbla blablabla.....
$SMTPServer = 'server.domain'
#Find accounts that are enabled and have expiring passwords
$SearchBase = "OU=OU,DC=domain,DC=lan"
$users = Get-ADUser -SearchBase $SearchBase -filter {Enabled -eq $True -and PasswordNeverExpires -eq $False -and PasswordLastSet -gt 0 } `
-Properties "SamAccountName", "EmailAddress", "msDS-UserPasswordExpiryTimeComputed" | Select-Object -Property "SamAccountName", "EmailAddress", `
@{Name = "PasswordExpiry"; Expression = {[datetime]::FromFileTime($_."msDS-UserPasswordExpiryTimeComputed").tolongdatestring() }}
foreach ($user in $users) {
if ($user.PasswordExpiry -eq $TestDate) {
$days = 15
write-host "Le mot de passe du compte $($user.name) expire dans 15 jours"
$EmailBody = $Body1,
Send-MailMessage -To $To -From $MailSender -SmtpServer $SMTPServer -Subject $Subject -Body $EmailBody -BodyAsHtml -Encoding UTF8
}
Powershell: la vie est belle
Dernière édition: il y a 3 ans 6 mois par Toper.
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 3 ans 6 mois #30091
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Script ne fonctionne pas en tâche planifiée
Essaie en envoyant juste un mail simple dans ta tâche planifiée.
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 3 ans 6 mois - il y a 3 ans 6 mois #30094
par Toper
Powershell: la vie est belle
Réponse de Toper sur le sujet Script ne fonctionne pas en tâche planifiée
J'ai essayé d'envoyer un simple mail par la tâche planifiée: NOK.
Par le script lui-même OK.
J'ai essayé comme ceci:en faisant exprès de mettre "-To $Too" pour vérifier que l'erreur soit bien catchée et inscrite dans le fichier txt (et ça fonctionne).
donc j'en déduis qu'aucune erreur n'est générée pendant le script....
Mais il ne m'envoi rien...
J'ai aussi mis un out-file en toute fin de ce script qui me créé bien le fichier quand je le lance par tâche planifiée.
Par le script lui-même OK.
J'ai essayé comme ceci:
$SMTPServer = 'smtpserver'
$To = "dest@domain.com"
$MailSender = " Ne_Pas_Répondre <noreply@domain.com>"
$Subject = 'Expiration de mot de passe'
$Body1 = 'Bonjour,<br>'
$EmailBody = $Body1
Try {
Send-MailMessage -To $Too -From $MailSender -SmtpServer $SMTPServer -Subject $Subject -Body $EmailBody -BodyAsHtml -Encoding UTF8
} catch {
Write-Output "An exeption is occured : $($Error.exception.message)" | Out-File C:\Users\<username>\Desktop\error.txt
}
out-file C:\Users\buenadg\Desktop\mail.txt
donc j'en déduis qu'aucune erreur n'est générée pendant le script....
Mais il ne m'envoi rien...
J'ai aussi mis un out-file en toute fin de ce script qui me créé bien le fichier quand je le lance par tâche planifiée.
Powershell: la vie est belle
Dernière édition: il y a 3 ans 6 mois par Toper.
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.091 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- Script ne fonctionne pas en tâche planifiée