题
这是片段。 %% 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%"
)
解决方案
在变量中使用 ~n
来删除路径部分。此外,您不需要xcopy行中的%_ SRC \%
:
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%"
)
查看 /?
以获取解释和其他好处。
不隶属于 StackOverflow