Comment changer la date du fichier ou l'horodatage dans Windows
Windows gère trois dates / horodatages différents pour chaque fichier et dossier. Ce sont «Date de création», «Date de modification» et «Date d'accès». Dans certaines situations, vous devrez peut-être modifier l'horodatage modifié, créé ou consulté pour la dernière fois d'un fichier ou d'un dossier.
Par exemple, j'ai dû modifier l'horodatage de certains fichiers pour tester la méthode de synchronisation Robocopy lors de l'écriture d'un article sur la comparaison et la synchronisation des dossiers. D'autres utilisateurs peuvent avoir besoin de modifier la date ou l'heure d'un fichier à des fins de sauvegarde ou d'archivage.
Voyons quelques méthodes pour changer la date de création, la date de modification ou la dernière date d'accès aux fichiers dans cet article.
Changer la création du fichier, la dernière date d'accès ou de modification
Utilisation de PowerShell
Pour modifier la date du fichier à l'aide de PowerShell, voici les commandes que vous devez exécuter:
Modifiez la date de création / l'horodatage d'un fichier nommé log1.txt:
(Get-Item "D: \ Test \ log1.txt"). CreationTime = ("3 août 2019 17:00:00")
Modifiez la dernière date / horodatage d'écriture d'un fichier nommé log1.txt:
(Get-Item "D: \ Test \ log1.txt"). LastWriteTime = ("3 août 2019 17:10:00")
Modifiez la dernière date / horodatage consulté d'un fichier nommé log1.txt:
(Get-Item "D: \ Test \ log1.txt"). LastAccessTime = ("3 août 2019 17:10:00")
Modifiez la date / l'horodatage de tous les fichiers d'un dossier nommé Test:
Pour modifier l'horodatage de tous les fichiers d'un dossier, utilisez la syntaxe suivante:
Get-ChildItem -force d: \ test \ * | ForEach-Object {$ _. CreationTime = ("3 août 2019 17:00:00")} Get-ChildItem -force d: \ test \ * | ForEach-Object {$ _. LastWriteTime = ("3 août 2019 17:10:00")} Get-ChildItem -force d: \ test \ * | ForEach-Object {$ _. LastAccessTime = ("3 août 2019 17:10:00")}
Notez que la commande ci-dessus modifie l'horodatage de chaque fichier et sous-dossier d'un dossier. Pour appliquer la modification uniquement aux fichiers (c'est-à-dire exclure les sous-dossiers), utilisez cette syntaxe:
Get-ChildItem -force d: \ test \ * | Where-Object {! $ _. PSIsContainer} | ForEach-Object {$ _. CreationTime = ("3 août 2019 17:00:00")} Get-ChildItem -force d: \ test \ * | Where-Object {! $ _. PSIsContainer} | ForEach-Object {$ _. LastWriteTime = ("3 août 2019 17:10:00")} Get-ChildItem -force d: \ test \ * | Where-Object {! $ _. PSIsContainer} | ForEach-Object {$ _. LastAccessTime = ("3 août 2019 17:10:00")}
Modifier la dernière date / horodatage d'écriture d'un «dossier»
(Get-Item "D: \ Test \"). LastWriteTime = ("3 août 2019 17:00:00")
Afficher la date de création, de modification et de dernier accès de tous les fichiers d'un dossier
Pour afficher la date de modification, la date de création et la date des dernières données écrites pour tous les fichiers d'un dossier, utilisez la syntaxe de ligne de commande suivante:
Get-ChildItem -force "D: \ Test \" | Select-Object Name, CreationTime, LastWriteTime, LastAccessTime
(ou)
foreach ($ objFile dans Get-ChildItem "D: \ Test \ *. *") '+ $ objFile.LastWriteTime +'
Vous verrez une sortie comme celle-ci:
"log1.txt" | 08/03/2019 17:00:00 | 08/03/2019 17:10:00 | 08/03/2019 17:10:00 "log2.txt" | 08/03/2019 17:00:00 | 08/03/2019 17:10:00 | 08/03/2019 17:10:00 "log3.txt" | 08/03/2019 17:00:00 | 08/03/2019 17:10:00 | 08/03/2019 17:10:00 "log4.txt" | 08/03/2019 17:00:00 | 08/03/2019 17:10:00 | 08/03/2019 17:10:00

Utilisation de NirCmd de Nirsoft
À l'aide de NirCmd, un outil de ligne de commande polyvalent de Nirsoft.net, vous pouvez modifier la date et l'horodatage du fichier.
Voici la syntaxe de ligne de commande pour modifier l'horodatage du fichier à l'aide de NirCmd:
nircmd.exe setfiletime [nom de fichier ou caractère générique] [Date de création] {Date de modification} {Date d'accès}
- Le premier paramètre peut être un nom de fichier unique ou une chaîne générique.
- Les paramètres de dates doivent être spécifiés au format suivant: "jj-mm-aaaa hh: mm: ss" si aucun paramètre de date n'est spécifié ou si vous spécifiez une chaîne vide (""), la date ne sera pas modifiée.
- Si vous spécifiez
"now"
comme paramètre de date, la date et l'heure actuelles seront utilisées.
Exemples
nircmd.exe setfiletime "d: \ test \ log1.txt" "03/08/2019 17:00:00" "" "03/08/2019 17:10:00" nircmd.exe setfiletime "d: \ test \ log2.txt "maintenant maintenant maintenant nircmd.exe setfiletime" d: \ test \ log3.txt "maintenant" "maintenant nircmd.exe setfiletime" d: \ test \ log4.txt "" 03/08/2019 17:00:00 "" 03/08/2019 17:10:00 "maintenant
Pour modifier l'horodatage de tous les fichiers texte d'un dossier, voici la syntaxe de ligne de commande:
nircmd.exe setfiletime "d: \ test \ *. txt" "03/08/2019 17:00:00" "03/08/2019 17:10:00" "03/08/2019 17:10:00"
Utilisation de BulkFileChanger de Nirsoft
BulkFileChanger est un autre outil utile de Nirsoft.net qui peut modifier l'heure de création, de modification ou d'accès d'un ou de plusieurs fichiers. Il peut également modifier en masse les attributs de fichier (lecture seule, masqué, système).
Démarrez BulkFileChanger et ajoutez-y les fichiers. Lors de l'ajout de fichiers à la liste, vous pouvez éventuellement choisir d'ajouter des fichiers dans des sous-dossiers et également définir le niveau de récursivité en conséquence.

Sélectionnez tous les fichiers et cliquez sur Modifier l'heure / les attributs dans le menu Action .
Vous voudrez peut-être décocher l' heure spécifiée en premier dans GMT, car la plupart d'entre nous préfèrent entrer l'heure locale plutôt que l'heure GMT.
Saisissez la date / heure de création, de modification ou d'accès. Pour remplir l'heure actuelle dans tous les champs, cliquez sur le bouton Remplir l'heure actuelle ci-dessous.

Pour les images prises à partir d'un appareil photo, l'EXIF ou le champ de métadonnées contient le champ Date de prise de vue, qui est distinct des données modifiées / créées par NTFS à la date. Vous pouvez afficher les données EXIF à partir des propriétés du fichier JPG ou à l'aide de l'utilitaire ExifDataView de Nirsoft.net.

Cela dit, BulkFileChanger vous permet également de modifier l'horodatage de la date de prise (métadonnées EXIF). Pour modifier les métadonnées de date, cliquez sur le bouton Aucune modification et sélectionnez l'option appropriée.

L' EXIF - Heure générée correspond aux métadonnées de la date de prise et ce champ est affiché dans la colonne Date de l'Explorateur de fichiers. De nombreux programmes utilisent également cette valeur comme date / heure officielle de l'image.
Notez que vous ne pouvez modifier la date EXIF d'une image de caméra que si les valeurs de date / heure existent déjà dans les fichiers .jpg. BulkFileChanger ne peut pas ajouter de nouveaux champs dans les données EXIF.
Et, en option, vous pouvez également copier l'horodatage depuis Modified, Created, Accessed, EXIT - Generated Time, EXIT - Stored Time ou EXIT - Modified Time et l'appliquer automatiquement à d'autres champs de date.
Prise en charge de la ligne de commande
BulkFileChanger prend également en charge les opérations de ligne de commande afin que vous n'ayez pas à ouvrir l'interface graphique à chaque fois. Consultez la page d'accueil de BulkFileChanger pour obtenir de l'aide en ligne de commande / la liste des arguments pris en charge.
$config[ads_text6] not found