Inicio
» WINDOWS
»
Cómo eliminar archivos pero conservar carpetas en Windows 10
Cómo eliminar archivos pero conservar carpetas en Windows 10
Para eliminar archivos pero conservar carpetas en Windows 10, usa PowerShell para listar solo los archivos y pásalos al comando Remove-Item. Las carpetas nunca se envían al comando de eliminación, por lo que la estructura de carpetas permanece intacta. -WhatIfPrimero, previsualiza los destinos con: esta operación omite la Papelera de reciclaje del Explorador de archivos, así que haz una copia de seguridad antes de ejecutarla.
Antes de borrar nada
Selecciona la carpeta principal exacta que deseas borrar y comprueba que no contenga archivos que aún necesites. Cierra las aplicaciones que puedan estar utilizando esos archivos. Si el directorio está sincronizado con un servicio en la nube o se comparte con otras personas, ten en cuenta que la eliminación de sus archivos también afectará a dicho servicio.
Utilice una ruta de carpeta completa, no una letra de unidad ni una ubicación amplia como C:\.
Primero, haga una copia de seguridad de los archivos importantes. Remove-ItemNo incluye un paso para restaurar desde la Papelera de reciclaje en el Explorador de archivos.
Ejecuta PowerShell con una cuenta que tenga acceso al destino. Comienza con una ventana normal para tus propios archivos; la elevación de privilegios no anula todas las restricciones de seguridad.
Seleccione la carpeta principal cuya jerarquía necesita conservar.
Previsualiza los archivos que PowerShell eliminará.
Abre el menú Inicio, busca Windows PowerShell y ejecútalo. Selecciona $rootla carpeta que deseas limpiar. Mantén las comillas alrededor de la ruta, especialmente si contiene espacios.
Reemplaza la ruta de ejemplo con la tuya. -LiteralPathTrata el valor como una ruta literal en lugar de interpretar caracteres comodín. -FileLimita los resultados a archivos, -Recurseincluye archivos en carpetas anidadas e -Forceincluye archivos ocultos o del sistema en la búsqueda. La última -WhatIfinstrucción le pide a PowerShell que muestre qué haría sin realizar la eliminación.
El parámetro -WhatIf muestra los archivos de destino sin eliminarlos.
Lea todas las rutas que aparecen en la vista previa. Confirme que cada una se encuentra dentro del árbol de carpetas que desea limpiar. PowerShell debería informar sobre las operaciones realizadas en los archivos; si la ruta de destino es incorrecta o ve un directorio inesperado, deténgase y corríjalo $rootantes de continuar.
Revise las rutas individualmente; la vista previa debe mostrar los nombres de los archivos, no de los directorios.
Elimine los archivos y deje las carpetas.
Una vez que la vista previa sea correcta, ejecute la misma canalización solo de archivos sin -WhatIf:
Get-ChildItemProporciona únicamente objetos de archivo, por lo que Remove-Itemelimina esos archivos dejando la carpeta raíz y sus subcarpetas intactas. Las carpetas vacías permanecen vacías; este comando no las elimina. El segundo -Forcepermite Remove-Itemeliminar archivos ocultos o de solo lectura, pero no puede eludir los controles de acceso. Microsoft documenta las opciones de listado recursivo y de solo archivo en su referencia de Get-ChildItem y explica -Forcey -WhatIfen la referencia de Remove-Item .
La estructura de carpetas anidadas se mantiene incluso después de eliminar las entradas de archivo.
Limitar la limpieza a un solo tipo de archivo.
Para eliminar solo una extensión específica, agregue un filtro antes de Remove-Item. Por ejemplo, previsualice solo .txtlos archivos en todo el árbol:
Después de revisar la vista previa, ejecute la misma canalización con Remove-Item -Forceen lugar de Remove-Item -WhatIf. Para un nombre de archivo repetido en diferentes subcarpetas, filtre por $_.Nameen lugar de $_.Extension, como Where-Object { $_.Name -ieq 'image.png' }. Estos filtros siguen actuando sobre objetos de archivo, por lo que se conserva la estructura de carpetas.
Verificar el resultado y gestionar los errores.
Comprueba que la ruta raíz aún existe y cuenta los archivos que PowerShell todavía puede encontrar:
El primer comando debería devolver True. Un recuento de 0significa que la búsqueda no encontró archivos restantes. Si ve errores de acceso denegado o archivo en uso, los elementos afectados no se eliminaron. Cierre la aplicación usando un archivo y vuelva a intentarlo; para ubicaciones protegidas, use una cuenta con el permiso requerido solo si está autorizado para cambiar esos archivos. -Forcemaneja algunos atributos de archivo, no barreras de permisos.
Si su objetivo es borrar archivos conservando el nombre de cada carpeta, mantenga el -Filefiltro activado e inspeccione la -WhatIfsalida antes de cada ejecución. Evite comandos como Remove-Item $root -Recurse: que afectan al contenido de los directorios y también pueden eliminar carpetas.