Tengo un directorio que quiero copiar a otro directorio en el uso de Robocopy.exe.

Mi plan es excluir algunos archivos de la raíz del directorio de origen. De hecho, me gustaría SÓLO se excluyen .archivos html a partir de la RAÍZ del directorio.

El truco es que actualmente estoy usando /E que está causando todas las subcarpetas para ser procesados.

Por lo tanto, el actual resultado de mi operación es que si yo uso:

/E /XF "*.html"

Voy a excluir todos los archivos HTML de todo el sitio.

Hay una manera que puedo guardar la copia de todas las sub-carpetas, sino también el uso de XF para excluir .archivos html a partir de la raíz?

Algo como:

/E /XF "c:\releases\website_source\*.html"
Es un dilema muy bien – ¿qué acerca de la transferencia de los archivos, pero eliminar el .los archivos html de su destino después?

OriginalEl autor Karl | 2011-06-30

2 Comentarios

  1. 4

    Mi solución sería indecente, pero es muy fácil de entender.
    Acabo de realizar la tarea con dos líneas archivo de proceso por lotes.
    Robocopy la carpeta raíz (pero no en los subdirectorios) – incluido .los archivos html.
    Luego, a la siguiente línea de Robocopy incluyendo todos los subs (excluyendo *.html)

    OriginalEl autor Raiser

  2. 3

    Ok, así que por ningún motivo real, tenía que encontrar una manera de responder a esto.

    Sólo pude encontrar una «decente» forma, el uso de powershell y todavía es complicado.

    Así que en primer lugar, modificar el siguiente powershell para que coincida con sus necesidades:

    $files = Get-ChildItem c:\releases\website_source -Filter {*.html}
    "/XF" > c:\temp\exclude.rcj
    foreach ($f in $files) {$f.FullName >> c:\temp\exclude.rcj}
    

    Esto crea una lista de archivos después de la /XF comando en un robocopy «trabajo» de archivo.
    A continuación, llame a su comando robocopy como normal, pero agregar /job:c:\temp\exclude.rcj para el final de la misma. Este será, básicamente, hacer un complejo /XF para cada raíz archivo HTML simple para escribir en tu script.

    Nota que usted puede hacer todo lo anterior con un archivo de proceso por lotes, pero estoy mejor con powershell luego por lotes para el bucle y tal.

    Sí me doy cuenta de que esto es un poco de fecha pregunta en este punto, pero yo necesitaba hacer algo.

    OriginalEl autor ArchGriffin

Dejar respuesta

Please enter your comment!
Please enter your name here