Inicio
» WINDOWS
»
Organiza automáticamente los archivos en carpetas por fecha de creación.
Organiza automáticamente los archivos en carpetas por fecha de creación.
Utilice PowerShell para organizar archivos en carpetas según su fecha de creación de Windows . El script que se muestra a continuación agrupa los archivos en carpetas con el formato año-mes _ByCreationDatey, en su primera ejecución, muestra una vista previa de los cambios de ubicación previstos. Funciona con archivos dentro de una misma carpeta; las subcarpetas existentes permanecen intactas.
Esto reemplaza el antiguo flujo de trabajo de SubDiv con los comandos de PowerShell integrados de Windows. Realice una copia de seguridad o pruebe los pasos primero en una carpeta de prueba copiada, especialmente si los archivos son importantes.
Qué significa “Fecha de creación”
PowerShell muestra la marca de tiempo de creación del sistema de archivos como CreationTime. Es diferente de LastWriteTime, que registra la última vez que se modificó el contenido del archivo. Microsoft señala que los sistemas de archivos pueden registrar las marcas de tiempo de forma diferente, y algunas plataformas no admiten una hora de creación real. Considere esto como la fecha que Windows informa para el archivo donde está almacenado, en lugar de una prueba de cuándo se creó originalmente su contenido. Para fotos o documentos con sus propias fechas incrustadas, examine esos metadatos por separado.
Organizar archivos en carpetas por fecha con PowerShell
1. Seleccione la carpeta e inspeccione su contenido.
Seleccione una carpeta cuyos archivos desee organizar, como una carpeta temporal que haya creado para esta tarea. En el Explorador de archivos, cambie a la vista Detalles y verifique la columna Fecha de creación para saber qué marca de tiempo desea utilizar. Mantenga la carpeta de destino en la misma unidad, si es posible, y cierre los programas que puedan estar escribiendo en los archivos.
Verifique los valores de Fecha de creación en la vista Detalles antes de ordenar.
El script crea el archivo _ByCreationDatedentro de la carpeta seleccionada. No accede a las subcarpetas existentes. Por defecto, Get-ChildItemtambién omite los elementos ocultos; el ejemplo mantiene esta configuración predeterminada para mayor seguridad.
2. Confirme las fechas que PowerShell leerá.
Abre la Terminal de Windows o PowerShell y reemplaza la ruta de ejemplo con la de tu carpeta. Este comando de solo lectura muestra cada archivo directo junto con su fecha y hora de creación:
Compruebe algunos archivos conocidos con el Explorador de archivos. Microsoft documenta Get-ChildItemel cmdlet para recuperar el contenido de un directorio; su -Fileparámetro filtra los resultados para mostrar solo los archivos.
Revise las fechas de creación antes de elegir la estructura de carpetas.
3. Guarda el script de ordenación fuera de la carpeta de origen.
Guarda lo siguiente en SortByCreatedDate.ps1una ubicación fuera de la carpeta que se está ordenando, como por ejemplo C:\Scripts. Guardar el script en otro lugar evita que se mueva con los archivos. Cambia $sourcea la ruta de la carpeta real:
Cada archivo se asigna a una carpeta como _ByCreationDate5-03. La New-Itemlínea crea la carpeta del mes de destino si es necesario. Move-Itemrealiza el movimiento; su -WhatIfmodificador le pide a PowerShell que describa la acción sin mover el archivo.
4. Previsualiza y luego aplica los movimientos.
Ejecute el script guardado desde PowerShell, por ejemplo:
& 'C:\Scripts\SortByCreatedDate.ps1'
Lea atentamente las rutas de vista previa. El script crea carpetas de destino vacías durante esta vista previa, pero -WhatIfdeja los archivos de origen en su lugar. Si las carpetas propuestas son correctas, elimine -WhatIfla Move-Itemlínea, guarde el script y ejecútelo de nuevo. Después, verifique algunos archivos en el Explorador de archivos.
Vista previa ilustrativa: confirme cada ruta de origen y destino antes de aplicar los movimientos.Ejemplo de la estructura de carpetas año-mes generada por el script.
Repita la clasificación y gestione los problemas comunes.
Este es un organizador por lotes: ordena los archivos presentes cada vez que se ejecuta, en lugar de monitorear la carpeta continuamente. Para la limpieza recurrente, mantenga el script fuera de la carpeta de origen y use el Programador de tareas de Windows para ejecutarlo según una programación. Déjelo -WhatIfen su lugar hasta que haya revisado las rutas planificadas; elimínelo solo cuando esté listo para que las ejecuciones programadas muevan los archivos.
Archivos con el mismo nombre: PowerShell informa de un conflicto si ya existe un archivo con ese nombre en el mes de destino. El script no -Forcesobrescribe los archivos. Resuelva el problema de los archivos duplicados o seleccione un nuevo destino antes de volver a intentarlo.
Las subcarpetas permanecen sin cambios: este script no incluye ninguna -Recurseopción de configuración. Añada la ordenación recursiva solo después de decidir cómo gestionar los nombres duplicados y conservar la estructura original de cada carpeta.
Las fechas pueden aparecer de forma inesperada: compruebe el campo "Fecha de creación" del archivo y el dispositivo de almacenamiento. La compatibilidad y la precisión de las marcas de tiempo del sistema de archivos varían, por lo que un recurso compartido de red, una unidad externa, una restauración o un flujo de trabajo de sincronización pueden mostrar fechas diferentes.