Bonsoir à tous,

J'ai des photos. Beaucoup. Qui ne sont pas obligatoirement rangées au bon endroit. Je m'en suis aperçu quand la date de mon mariage n'était pas la bonne...
J'ai vu que, dans les propriétés de ces photos, LastWriteTime correspondait à la date de la prise de vue.
Je peux donc scripter le rangement de mes photos...
je voudrais récupérer le LastWriteTime, qui a cette tête là:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
${PhotoList} = Get-ChildItem ${SourceDirectory} -Recurse
foreach (${Photo} in ${PhotoList}) {
    If ( Test-Path ${Photo} -PathType Container ) {
        Write-Host ${Photo}.LastWriteTime
    }
}
Qui me renvoie, par exemple:
Ensuite vérifier si le répertoire 2006-05-28 existe, et, si tel n'est pas le cas, le créer.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
If ( !(Test-Path ${TargetDirectory}) ) {
  New-Item ${TargetDirectory} -type directory
}
Une fois que le bon répertoire est créé, déplacer le contenu au bon endroit.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Move-Item ${Photo}  ${TargetDirectory}
Il faudra encore faire des contrôles (est-ce qu'un fichier avec ce nom là existe déjà ou pas...) mais mon gros problème, dans l'immédiat, est de passer de mon LastWriteTime comme ça: 2006/05/28 à mon ${TargetDir} comme ça: 2006-05-28

Des idées ? Un SED version powershell ?

D'avance Merci,

Jean-Bernard