jueves, 20 de junio de 2019

Alterar la Ultima Fecha de Modificación de un archivo en Windows


Alterar la Ultima Fecha de Modificación de un archivo en Windows

De vez en cuando suceden situaciones en las que es necesario ajustar la última fecha de modificación o de creación de un archivo dentro del sistema operativo Windows. Esta tarea puede ser realizada de manera muy sencilla mediante el uso de programas como:
Attribute Changer, que permite cambiar fácilmente las propiedades de un archivo o carpeta. https://www.petges.lu/
o
NewFileTime, que corrige y manipula la fecha y hora para cualquier archivo y carpeta. https://www.filecluster.es/programas/NewFileTime-71442.html

Incluso, si se trata de un documento que puede ser editado, lo recomendable es cambiar la fecha al sistema Windows, y entonces abrir el documento y guardarlo, para que su última fecha de modificación quede registrada con la fecha del sistema.

En ocasiones, no es posible utilizar ninguna de estas opciones debido a que estamos utilizando un equipo administrado por una organización (puede ser el departamento de sistemas). Cuando esto sucede, ante cualquier intento de realizar alguna modificación al sistema Windows, aparece un dialogo que nos advierte de la acción, y solicita que se introduzca el usuario y la contraseña de un usuario administrador del sistema.

La opción a la que se puede recurrir, ante esta situación, es a través de PowerShell:

Ejecutamos PowerShell como administrador

Una vez que ya está activa la ventana de PowerShell, procedemos a utilizar los siguientes comandos.

Comando para modificar la Hora de creación:

Get-ChildItem C:\testFile1.txt | % {$_.CreationTime = '01/11/2005 06:00:36'}

Comando para modificar la Última Fecha de modificación:

Get-ChildItem C:\testFile1.txt | % {$_.LastWriteTime = '01/11/2005 06:01:36'}

Hay que tener en cuenta que es posible que se tenga que cambiar el formato de la fecha al formato de estados unidos. Por lo tanto, si prefiere utilizar el formato de fecha ISO, es posible que se desee utilizar algo como:

Get-ChildItem C:\testFile1.txt | % {$_.LastWriteTime = '2005-11-01 06:01:36'}

De lo contrario, no funcionará ya que la fecha utilizada no se ajusta al formato de fecha del sistema operativo configurado. Sin embargo, en ese caso no obtendrá un error, simplemente no cambiará la fecha.