En Windows 10, Storage sense es una característica para liberar espacio automáticamente cuando se está quedando sin almacenamiento. La función funciona eliminando los archivos basura del sistema, aquellos archivos que han estado en la papelera de reciclaje o en la carpeta Descargas durante más de un mes y haciendo que el contenido de OneDrive que ha usado en un tiempo solo esté en línea .
Aunque esta característica puede ser útil para controlar el espacio de almacenamiento, es limitada y no ofrece la opción de agregar manualmente diferentes ubicaciones para monitorear y eliminar archivos que no han cambiado en el último mes más o menos. Si almacena archivos no importantes en una ubicación diferente, es posible usar PowerShell y el Programador de tareas para monitorear y limpiar archivos de cualquier carpeta que tenga más de una cantidad específica de días.
En esta guía , aprenderá los pasos para eliminar automáticamente los archivos que no se han modificado en el último mes o en la cantidad de días que especifique en Windows 10 . (Estos pasos también deberían funcionar en Windows 11 ).
Importante: se recomienda probar el comando usando una carpeta temporal, ya que escribir el comando incorrecto puede provocar la eliminación de los archivos incorrectos.
Elimine archivos de más de X días en Windows 10 usando PowerShell
Si tiene diferentes carpetas con muchos archivos y desea limpiarlos eliminando los que tienen más de ciertos días, puede seguir estos pasos:
-
Abra Inicio en Windows 10.
-
Busque Windows PowerShell , haga clic con el botón derecho en el resultado y seleccione la opción Ejecutar como administrador .
-
Escriba el siguiente comando para eliminar archivos que no se hayan modificado en los últimos 30 días y presione Entrar :
Get-ChildItem –Ruta "C:\ruta\a\carpeta" -Recurse | Where-Object {($_.LastWriteTime -lt (Get-Date).AddDays(-30))} | Remover el artículo
Cambie la ruta: "C:\path\to\folder"
con la ubicación de la carpeta, desea eliminar archivos y cambiar -30
para seleccionar archivos con una fecha de última modificación en el comando anterior.
Elimine archivos con más de X días automáticamente en Windows 10 usando el Programador de tareas
El comando de las instrucciones anteriores le permite eliminar archivos en una carpeta con más de 30 días de antigüedad, pero debe abrir PowerShell y ejecutar el comando manualmente cada vez que desee liberar espacio.
Cree un script de PowerShell usando el Bloc de notas
Para ejecutar una tarea con el Programador de tareas, deberá crear un script de PowerShell con los pasos:
-
Abre Inicio .
-
Busque el Bloc de notas y haga clic en el resultado superior para abrir la experiencia.
-
Copie y pegue el siguiente comando en un archivo de texto del Bloc de notas:
Get-ChildItem –Ruta "C:\ruta\a\carpeta" -Recurse | Where-Object {($_.LastWriteTime -lt (Get-Date).AddDays(-30))} | Remover el artículo
Cambie esta ruta: "C:\path\to\folder"
con la ubicación de la carpeta, desea eliminar archivos y cambiar -30
para seleccionar archivos con una fecha de última modificación en el comando anterior.
-
Haga clic en el menú Archivo .
-
Elija la opción Guardar como .
-
Guarde el archivo con el nombre y la extensión cleanup.ps1 .
Crear tarea usando el Programador de tareas
Si desea automatizar el proceso, debe usar el Programador de tareas para crear una tarea que ejecute el comando a intervalos específicos.
-
Abre Inicio .
-
Busque el Programador de tareas y haga clic en el resultado.
-
Haga clic con el botón derecho en la carpeta Biblioteca del programador de tareas .
-
Haga clic en la opción Nueva carpeta .
-
Escriba cualquier nombre para la carpeta y haga clic en Aceptar . (Estamos creando una nueva carpeta para mantener las tareas organizadas y separadas de las tareas del sistema).
-
Haga clic derecho en la carpeta creada recientemente y seleccione la opción Crear tarea .
-
En el cuadro "Nombre", ingrese un nombre para la tarea.
-
En la pestaña "General", en la sección "Opciones de seguridad", seleccione la opción "Ejecutar si el usuario ha iniciado sesión o no" en la sección "Opciones de seguridad". (Esta opción hará que la ventana de comandos no aparezca cuando la tarea se ejecute automáticamente).
-
Borre la opción No almacenar contraseña .
-
Haga clic en la pestaña "Activadores".
-
Haga clic en el botón Nuevo .
-
Usando el menú desplegable "Comenzar la tarea", seleccione En un horario .
-
En "Configuración", especifique cuándo desea que se ejecute la tarea (por ejemplo, A tiempo, Diariamente, Semanalmente, Mensualmente). Independientemente de la opción que seleccione, asegúrese de especificar la configuración de inicio en el lado derecho.
-
Haga clic en el botón Aceptar .
-
Haga clic en la pestaña Acciones .
-
Haga clic en el botón Nuevo .
-
Seleccione la opción Iniciar un programa usando el menú desplegable "Acciones".
-
En el campo "Programa/secuencia de comandos", escriba el siguiente comando:
powershell.exe
-
Escriba el siguiente comando en el campo "Agregar argumentos" y haga clic en el botón Aceptar .
-ExecutionPolicy Bypass C:\path\to\cleanup.ps1
Cambie la ruta: "C:\path\to\cleanup.ps1"
con la ubicación del script de PowerShell que ha creado previamente para eliminar archivos en el comando.
-
Haga clic en la pestaña Configuración .
-
Verifique las siguientes opciones:
- Permitir que la tarea se ejecute bajo demanda.
- Ejecute la tarea tan pronto como sea posible después de que se pierda un inicio programado.
- Si la tarea falla, reinicia todo.
-
Haga clic en el botón Aceptar .
-
Escriba su nombre de usuario y contraseña administrativos (si corresponde).
-
Haga clic en el botón Aceptar .
Una vez que complete los pasos, el script de PowerShell se ejecutará según el cronograma y eliminará los archivos anteriores a la cantidad de días que especificó. Recuerde no cambiar el nombre ni mover la carpeta a otra ubicación. De lo contrario, la tarea fallará.