Pregunta

Aquí está el fragmento. %% X es la ruta de origen. Quiero reemplazar la ruta de origen con la ruta de destino o simplemente eliminar la ruta de origen.

% _DEST% \ %% X no funciona en este fragmento ... donde verifica si el archivo de destino ya existe. ¿Cuál es la forma correcta de verificar si el archivo de destino existe?

call :LOGMSG Copying new jpeg image files
for %%X in (%_SRC%\*.jpeg) do if not exist %_DEST%\%%X (
    xcopy %_SRC%\%%X %_DEST% /defy >>"%run_log%"
    call sd.exe add %%X >>"%run_log%"
)
¿Fue útil?

Solución

Use ~ n en la variable para deshacerse de la parte de la ruta. Además, no necesita % _SRC \% en la línea xcopy:

call :LOGMSG Copying new jpeg image files
for %%X in (%_SRC%\*.jpeg) do if not exist %_DEST%\%%~nX (
    xcopy %%X %_DEST% /defy >>"%run_log%"
    call sd.exe add %%X >>"%run_log%"
)

Consulte para /? para obtener explicaciones y otras ventajas.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top