0

这是片段。%%X 是源路径。我想用目标路径替换源路径或者只是删除源路径。

%_DEST%\%%X 在此代码段中不起作用...它检查目标文件是否已存在。检查目标文件是否存在的正确方法是什么?

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%"
)
4

1 回答 1

1

在变量中使用~n以摆脱路径部分。此外,您不需要%_SRC\%在 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%"
)

查看for /?解释和其他好东西。

于 2009-09-16T19:27:22.857 回答