Yo uso Windows.
Quiero eliminar todos los archivos y carpetas de una carpeta mediante una llamada al sistema.
Puedo llamar así:
>rd /s /q c:\destination
>md c:\destination
¿Conoces una forma más fácil?
windows
batch-file
ufukgun
fuente
fuente
Respuestas:
No, no conozco ninguno.
Si desea conservar el directorio original por algún motivo (ACL, etc.) y, en cambio, realmente desea vaciarlo, puede hacer lo siguiente:
Esto primero elimina todos los archivos del directorio y luego, de forma recursiva, elimina todos los directorios anidados, pero en general, mantiene el directorio de nivel superior tal como está (excepto por su contenido).
Tenga en cuenta que dentro de un archivo por lotes necesita duplicar el
%
dentro delfor
ciclo:fuente
destination
por la ruta, posiblemente usando comillas alrededor de todo si es necesario.del c:\destination\*.* /s /q
trabajó para mi. Espero que eso también funcione para ti.fuente
del *.*
del "../../server/front-end\*.*"
Creo que la forma más sencilla de hacerlo es:
La última "\" en la ruta es la parte importante.
fuente
mkdir C:\FolderToNotToDelete
fue suficiente para mí :)¡Si! Utilice Powershell:
fuente
Si los nombres de las subcarpetas pueden contener espacios, debe rodearlos entre comillas de escape. El siguiente ejemplo muestra esto para los comandos utilizados en un archivo por lotes.
fuente
Para borrar un archivo:
Para eliminar la carpeta con todos los archivos en ella:
Eliminar todos los archivos de una carpeta específica (no eliminar la carpeta en sí) es un poco complicado.
del /s *.*
no puede eliminar carpetas, pero elimina archivos de todas las subcarpetas. Entonces se necesitan dos comandos:Puede crear una secuencia de comandos para eliminar lo que desee (carpeta o archivo) de esta manera
mydel.bat
:Pocos ejemplos de uso:
fuente
Una opción sencilla de una línea es crear un directorio vacío en algún lugar de su sistema de archivos y luego usar
ROBOCOPY
( http://technet.microsoft.com/en-us/library/cc733145.aspx ) con el/MIR
interruptor para eliminar todos los archivos y subcarpetas. De forma predeterminada, robocopy no copia la seguridad, por lo que las ACL en su carpeta raíz deben permanecer intactas.También es probable que desee establecer un valor para el interruptor de reintento
/r
, porque el número predeterminado de reintentos es 1 millón.fuente
Tenía una carpeta de índice con 33 carpetas que necesitaban eliminar todos los archivos y subcarpetas. Abrí una línea de comando en la carpeta de índice y luego usé estos comandos:
Los separé en dos líneas (presione enter después de la primera línea y, cuando se le solicite, agregue la segunda línea) porque si se ingresa en una sola línea, es posible que no funcione. Este comando borrará cada directorio y luego creará uno nuevo que está vacío, eliminando así todos los archivos y subcarpetas del directorio original.
fuente
Navega al directorio principal
Line1 pushd "Directorio principal"
Eliminar las subcarpetas
Línea 2 rd / s / q. 2> nulo
/superuser/173859/how-can-i-delete-all-files-subfolders-in-a-given-folder-via-the-command-prompt
fuente
pushd
, debe usarpopd
también. Desafortunadamente,popd
no funciona cuando borras el directorio. Entonces, tienes que hacer encd
lugar depushd
.Toma 2 sencillos pasos. [/ q significa silencioso, / f significa forzado, / s significa subdirectorio]
Vaciar el directorio para eliminar
Eliminar el directorio
fuente
intente esto, esto buscará todo MyFolder en el directorio raíz y eliminará todas las carpetas llamadas MyFolder
fuente
Este comando elimina todos los archivos y carpetas de la navegación actual en su línea de comando.
fuente