Question date de prochaine exécution

Plus d'informations
il y a 16 ans 9 mois #4834 par Retureau grégory
Bonjour à tous et merci pour votre aide.

Je débute en powershell et j'ai un soucis de date. Je calcule la date de prochaine exécution d'un script à l'aide d'une petite fonction et il faut que je passe cette date dans un fichier de log qui sert pour un autre traitement. Malheureusement la date dans le log est à l'anglaise (mois/jour/année HH mm ss), et il me la faut à la française (jour/mois/année HH mm ss)

voici le code :
[code:1]$datedebutInt = Get-Date #date pour calcul
$datedebut = Get-Date -Format \"dd/MM/yyyy HH:mm:«»ss\"

Function NextExecution
{
$a = Get-Date -UFormat \"%A\"

if($a -eq \"vendredi\"«»)
{
$next =(get-date).AddDays(3)
return $next
}
else{
$next = (get-date).AddDays(1)
return $next
}
}

$NextDate = NextExecution
Write-Host $nextdate #ici la date est la française

$Coderetour = 1
$TaskName= \"Backup_BO\" # Nom du script
$DateTxt= get-date -Format \"yyyyMMdd_HHmm\" # Création de la Variable composant le nom du log
$TxtPath=\"c:\temp\" # path du fichier de log
$TxtName=\"$datetxt.txt\" # initialisation du nom du log
$PathTask=\"c:\x\etc\backup_BO\backup_BO.ps1\" # path du Script
$Serveur = \"BODEV\" # Initialisation du nom du serveur
$Compte = \"toto\" # Initialisation du nom du compte exécutant la tâche
$datefinInt= get-date #date pour calcul
$datefin= get-date -Format \"dd/MM/yyyy HH:mm:«»ss\"
$duree= ($datefinInt-$datedebutInt)
$dureejob=$duree.TotalSeconds

$log = new-item -path FileSystem::$TxtPath -Name \"$TxtName\" -ItemType file # création du nom de log
add-content $log \"$Serveur;$TaskName;$CodeRetour;$DateFin;$NextDate;$Compte;$PathTask;à 09:00 du lundi au vendredi, début : 15/06/2009;$DureeJob;/logs/$Serveur/$TaskName/$TxtName;\\angers\data\Systeme\Winlog\jobmon\logs\$Serveur\$TaskName\$TxtName\" # Début d'écriture du fichier log[/code:1]

HGG

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 16 ans 9 mois #4836 par Laurent Dardenne
Peux-tu nous communiquer le résultat final produit par ce code et celui attendu ?
Je ne vois pas trop où est ton pb :S

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 16 ans 9 mois #4839 par Retureau grégory
Le résultat attendu :

dans un log : les renseignements suivants :
\"nom du serveur\";\"...\";\"date d'exécution\" au format français ; \"date de prochaine exécution\"; etc...

donc ça dans le fichier de log : BODEV;...;17/06/2009 17:55:56;18/06/2009 17:55:56

hors quand j'exécute ma fonction NextExecution :
[code:1]
$NextDate = NextExecution

Write-Host $nextdate[/code:1]
ça fonctionne la date est en français

mais quand je veux passer la variable $Nexdate dans le fichier de log, la date se retrouve transformée en 06/18/2009...
voilà le code pour ajouter du texte dans le fichier de log :
[code:1]add-content $log \"$Serveur;$TaskName;$CodeRetour;$DateFin;$NextDate;$Compte;$PathTask;à 09:00 du lundi au vendredi, début : 15/06/2009;$DureeJob;/logs/$Serveur/$TaskName/$TxtName;\\angers\data\Systeme\Winlog\jobmon\logs\$Serveur\$TaskName\$TxtName\"[/code:1]


J'ai résolu en fixant la variable en string avant de lancer l'ajout du texte au fichier de log
[code:1]$NextDate1=$NextDate.tostring(\"dd/MM/yyyy HH:mm:«»ss\"«»)[/code:1]

Mais bon j'aimerais comprendre ????

Le but ultime du script est :
- lancer un prétraitement à un outil de sauvegarde (Time Navigator)pour une sauvegarde d'un environnement BusinessObjects
- Passer des informations au travers d'un fichier de log à une plateforme de supervision (vbs et asp) qui habituellement s'appuie sur le gestionnaire de tâches d'où la date d'exécution et la date de la prochaine exécution.

Comme dans les mois à venir nous allons généraliser ce genre de traitement, j'écris une fonction qui singe le gestionnaire de tâches et permet de calculer la date de prochaine exécution...

HGG

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 16 ans 9 mois #4842 par Laurent Dardenne
HGG écrit:

Mais bon j'aimerais comprendre ????

Voir ce post de Janel :
janel.spaces.live.com/blog/cns!9B5AA3F6FA0088C2!185.entry

J'avais oublié ce pb :whistle:

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 16 ans 9 mois #4843 par Retureau grégory
merci pour toutes ces précisions:)

HGG

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.063 secondes
Propulsé par Kunena