我需要检查文件是否存在于两个路径中。 例如(考虑C:\ D \ a.txt&& D:\ E \ a.txt)。
a.txt文件存在于我需要执行复制操作的Dir中。
@echo OFF
IF EXIST C:\D\a.txt == D:\E\a.txt
copy C:\D\a.txt F:\test\a.txt
谢谢, 阿伦
答案 0 :(得分:0)
如果要确保两个文件相同,请使用FC:
FC C:\D\a.txt D:\E\a.txt
IF %ERRORLEVEL%==0 COPY C:\D\a.txt\ F:\test\filename.txt
FC
表示FileCompare
并将%ERRORLEVEL%设置为
这意味着您无需使用IF EXIST
检查文件是否存在。如果不是这种情况,则FC
会将%ERRORLEVEL%
设置为2
,并且不会复制该文件。如果两个文件都存在且相等,它只会复制文件。
有关FC检查http://ss64.com/nt/fc.html的更多信息。
如果您只想确保两个文件都存在,请使用:
IF EXIST C:\D\a.txt IF EXIST D:\E\a.txt COPY C:\D\a.txt\ F:\test\filename.txt
答案 1 :(得分:0)
假设您在dos上执行此操作
if exist {insert file name here} (
rem file exists
) else (
rem file doesn't exist
)
这样的事情可能很有用
if exist C:\D\a.txt (
set fileA=true
)
if exist D:\E\a.txt (
set fileB=true
)
if %fileB% EQU %FileA% (
Echo "The two file exist"
) else (
Echo "Do something"
)