Necesidad de comparar archivos en el directorio y eliminar archivos similares (pero es más complicado que la norma)

Necesidad de comparar archivos en el directorio y eliminar archivos similares (pero es más complicado que la norma)

Así que tengo una necesidad bastante extraña en mi entorno de trabajo y me cuesta mucho resolverla. Intentaré que esto sea lo más breve y conciso posible, pero explicar algunos antecedentes es clave para explicar por qué las cosas son desafiantes. Además, todo esto es en un entorno Windows, ya que probablemente sea importante jajaja.

Entonces, necesito una forma de mover automáticamente los archivos PDF, una vez que se han editado, a carpetas específicas. Para hacer esto, planeo que los usuarios editen los archivos PDF y luego los guarden como y agreguen una letra al final. Algo como AB111d iría a la carpeta Listo, pero si fuera AB111u iría a la carpeta Sin completar, por ejemplo. Ya descubrí esto a través de Robocopy, es bastante fácil.

Ahora aquí es donde entra en juego el problema, los archivos ya están nombrados de acuerdo con la estructura de nombres que necesitamos cuando se colocan en la carpeta principal, por lo que el usuario NO tiene que cambiar el nombre de todo el archivo, solo agregar una letra (la velocidad es clave aquí, por lo que escribir un nombre completo sería una pérdida de tiempo significativa cuando estos usuarios hacen esto cientos de veces al día). Pero TAMBIÉN necesito eliminar (o mover también funcionaría) el archivo original dentro del directorio que no tiene la letra adjunta.

Por ejemplo, un usuario abre AB111, trabaja en él, lo guarda como y le cambia el nombre a AB111d, el script de robocopy que estoy usando mueve AB111d a la carpeta Listo, pero AB111 todavía está allí, ese archivo AB111 original es el archivo que debe eliminarse de alguna manera (nuevamente o moverse, solo es necesario que no esté en la carpeta de trabajo de los usuarios para que sepan que ya lo terminaron). Ya sea que esto esté programado o pueda suceder en el momento de guardar, cualquiera de las dos cosas funcionaría.

¿Hay alguna manera de, digamos, comparar archivos en un directorio pero SIN la letra adjunta? Entonces podría comparar el directorio de trabajo con el directorio Listo (por ejemplo) pero sin la "d" adjunta en los archivos del directorio Listo. Y luego elimine/mueva el archivo original.

Nota final: todo esto debe automatizarse mediante secuencias de comandos y debe ocurrir como máximo cada 5 minutos.

Respuesta1

robocopia tiene la opción de:

/mov    Moves files, and deletes them from the source after they are copied.

Si necesita excluir archivos que están presentes en el destino pero no en el origen, se denominan "archivos adicionales". La exclusión de extras evitará cualquier eliminación del destino. La opción para eso es:

/xx     Excludes extra files and directories.

información relacionada