Question
Manipulation de date
- MEURY Nikolaus
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 14
- Remerciements reçus 0
il y a 12 ans 5 mois #11575
par MEURY Nikolaus
Réponse de MEURY Nikolaus sur le sujet Re:Manipulation de date
Bon problème réglé :
[code:1]if (Get-ItemProperty $bck_file_dq | where{$_.lastwritetime.dayofyear -ne (get-date).adddays(-1).dayofyear})
{
echo \"Error: Backup $bck_file_dq`nLast write time is not matching $day\"
}[/code:1]
Me reste que cette histoire de switch disgracieux à traiter mais ça fonctionne.
Merci
[code:1]if (Get-ItemProperty $bck_file_dq | where{$_.lastwritetime.dayofyear -ne (get-date).adddays(-1).dayofyear})
{
echo \"Error: Backup $bck_file_dq`nLast write time is not matching $day\"
}[/code:1]
Me reste que cette histoire de switch disgracieux à traiter mais ça fonctionne.
Merci
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 12 ans 5 mois #11576
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Manipulation de date
Salut,
si j'ai bien compris ton pb, voici une solution à adapter :
[code:1]
(Get-culture).DateTimeFormat.DayNames[((Get-date).DayOfWeek -as [int])]
[/code:1]<br><br>Message édité par: Laurent Dardenne, à: 19/04/12 15:56
si j'ai bien compris ton pb, voici une solution à adapter :
[code:1]
(Get-culture).DateTimeFormat.DayNames[((Get-date).DayOfWeek -as [int])]
[/code:1]<br><br>Message édité par: Laurent Dardenne, à: 19/04/12 15:56
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- MEURY Nikolaus
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 14
- Remerciements reçus 0
il y a 12 ans 5 mois #11579
par MEURY Nikolaus
Réponse de MEURY Nikolaus sur le sujet Re:Manipulation de date
Merci !!
[code:1](Get-culture).DateTimeFormat.DayNames[((Get-date).adddays(-1).DayOfWeek)][/code:1]
J'avais besoin d'un retour sur une opération de type (get-date).AddDays en français.
Par contre à quoi sert le [code:1]-as [int][/code:1]
La commande retourne une chaîne non ?
[code:1](Get-culture).DateTimeFormat.DayNames[((Get-date).adddays(-1).DayOfWeek)][/code:1]
J'avais besoin d'un retour sur une opération de type (get-date).AddDays en français.
Par contre à quoi sert le [code:1]-as [int][/code:1]
La commande retourne une chaîne non ?
Connexion ou Créer un compte pour participer à la conversation.
- Richard Lazaro
- Hors Ligne
- Membre platinium
Réduire
Plus d'informations
- Messages : 530
- Remerciements reçus 0
il y a 12 ans 5 mois #11581
par Richard Lazaro
Think-MS : (Get-Life).Days | %{ Learn-More }
\\"Problems cannot be solved by the same level of thinking that created them.\\" - Albert Einstein
Réponse de Richard Lazaro sur le sujet Re:Manipulation de date
Le -as [int] (essaye) converti l'objet précédent l'opérateur en type entier (int)
Think-MS : (Get-Life).Days | %{ Learn-More }
\\"Problems cannot be solved by the same level of thinking that created them.\\" - Albert Einstein
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 12 ans 5 mois #11582
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Manipulation de date
Nicky écrit:
Etant donné que l'on manipule un index de type entier, je force la transformation du jour (mercredi) en un entier ayant la valeur 3 :
[code:1]
(Get-date).adddays(-1).DayOfWeek -as [Int]
#3
(Get-culture).DateTimeFormat.DayNames[3]
#mercredi
(Get-culture).DateTimeFormat.DayNames -eq $null
#True
[/code:1]
Et comme le dit Richard, cet opérateur tente une conversion et renvoi $null si elle échoue.
Sache que l'opérateur associé est -IS :
[code:1]
(Get-date).adddays(-1).DayOfWeek -is [int]
#false
[/code:1]
Celui-ci ne fait que demander si la variable est du type indiqué.
Ta construction prouve que PS est un langage non typé
Oui, mais comme je ne connais pas par coeur les conversions implicites j'ai préféré préciser l'intention.La commande retourne une chaîne non ?
Etant donné que l'on manipule un index de type entier, je force la transformation du jour (mercredi) en un entier ayant la valeur 3 :
[code:1]
(Get-date).adddays(-1).DayOfWeek -as [Int]
#3
(Get-culture).DateTimeFormat.DayNames[3]
#mercredi
(Get-culture).DateTimeFormat.DayNames -eq $null
#True
[/code:1]
Et comme le dit Richard, cet opérateur tente une conversion et renvoi $null si elle échoue.
Sache que l'opérateur associé est -IS :
[code:1]
(Get-date).adddays(-1).DayOfWeek -is [int]
#false
[/code:1]
Celui-ci ne fait que demander si la variable est du type indiqué.
Ta construction prouve que PS est un langage non typé
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- brutosaure
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 59
- Remerciements reçus 0
il y a 12 ans 5 mois #11588
par brutosaure
Réponse de brutosaure sur le sujet Re:Manipulation de date
Nicky écrit:
Parce que si tu fais
[code:1](Get-culture).DateTimeFormat | gm[/code:1]
Tu verras que DayNames demandes un string
[code:1]DayNames Property System.String[] DayNames {get;set;}[/code:1]
Merci !!
[code:1](Get-culture).DateTimeFormat.DayNames[((Get-date).adddays(-1).DayOfWeek)][/code:1]
J'avais besoin d'un retour sur une opération de type (get-date).AddDays en français.
Par contre à quoi sert le [code:1]-as [int][/code:1]
La commande retourne une chaîne non ?
Parce que si tu fais
[code:1](Get-culture).DateTimeFormat | gm[/code:1]
Tu verras que DayNames demandes un string
[code:1]DayNames Property System.String[] DayNames {get;set;}[/code:1]
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.157 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- Manipulation de date