Entonces, solicito ayuda y actualmente estoy tratando de solucionar un problema en mis fotos de Google. Descargué el archivo de mis fotos de Google y tengo un montón de carpetas con archivos/fotos. Estoy intentando escribir un archivo por lotes para mover los archivos/fotos de la carpeta a la raíz de esta unidad portátil que estoy usando para la limpieza.
Hasta ahora tengo esto:
@echo off
for /f "tokens=*" %%f in ('dir /a:-D /s /b') do move "%%f" .
for /f "tokens=*" %%f in ('dir /a:D /s /b') do rd "%%f"
Funciona, el único problema que tengo es que potencialmente podría haber fotos con el mismo nombre de archivo en diferentes carpetas y no quiero sobrescribirlas.
¿Hay algún parámetro que pueda configurar en el comando de movimiento para bloquear la sobrescritura?
Gracias
Respuesta1
¿Hay algún parámetro que pueda configurar en el comando de movimiento para bloquear la sobrescritura?
Puede utilizar el /-Y
interruptor (Habilitar mensaje de confirmación al sobrescribir archivos).
El siguiente truco solucionará el problema n
para que el movimiento no se produzca:
echo n|move /-y "%%f" .
Notas:
Este truco sólo funciona para un único archivo, sin comodines
Si un archivo esnomovido, su siguiente
rd
comando fallará con el siguiente error:The directory is not empty.
Otras lecturas
- Un índice AZ de la línea de comando CMD de Windows- Una excelente referencia para todo lo relacionado con la línea cmd de Windows.
- mover- Mover un archivo de una carpeta a otra.
- tercero- Eliminar carpeta(s).