¿Cuál es una buena opción de línea de comandos de Windows para eliminar todos los archivos en una carpeta dada anterior a (n) días?
También tenga en cuenta que puede haber muchos miles de estos archivos, por lo que forfiles
con un shell cmd
no es una gran idea aquí ... a menos que le guste generar miles de shells de comandos. Considero que es un truco bastante desagradable, ¡así que veamos si podemos hacerlo mejor!
Idealmente, algo integrado (o fácilmente instalable) en Windows Server 2008.
windows
command-line-interface
Jeff Atwood
fuente
fuente
Respuestas:
Miré a mi alrededor un poco más y encontré una forma de PowerShell :
Eliminar todos los archivos de más de 8 días de antigüedad de la carpeta especificada (con vista previa)
(elimine el -whatif para que suceda)
fuente
Me encanta el comando PowerShell de Jeff, pero para una solución vbs alternativa para máquinas Windows sin PowerShell, puede intentar lo siguiente.
Guardar como
<filename>.vbs
y ejecutar:El tercer parámetro,
[Action]
es opcional. Sin ella, los archivos anteriores<NoDaysSinceModified>
serán listados. Con esto configuradoD
, eliminará archivos anteriores a<NoDaysSinceModified>
Ejemplo
será una lista de todos los archivos de
c:\Log Files
más de 8 días de edadserá eliminar todos los archivos de
c:\Log Files
más de 8 días de edadnota: esta es una versión modificada del script de Haidong Ji en SQLServerCentral.com
fuente
En realidad, no es la línea de comandos, pero me gusta usar LINQPad como un host de secuencias de comandos C #:
(lo que me dio una idea para una línea de comandos C # scripting thingie à la vbs files)
fuente
Eche un vistazo a este http://sourceforge.net/projects/delold ya que esto es lo que uso.
Simple pero funciona. delold -d 14 Elimina archivos anteriores a 14 días en la carpeta actual.
fuente
Algo similar se puede lograr con el comando "encontrar" de cygwin (u otra alternativa). Pero esto requeriría que instales cygwin o tengas la versión portátil a mano.
fuente
Otra alternativa que solía usar antes de powershell:
http://lifehacker.com/133190/geek-to-live--hard-drive-janitor
fuente
Utilizo autoIT para lograr esto en mis sistemas. Me gusta que pueda compilar archivos .au3 para ejecutar fácilmente. No es tan fácil introducir una falla de seguridad como lo es con un archivo bat que cualquiera puede editar.
fuente