我正在查看两个日志文件(Windows操作系统)的时间戳,如果它们不同,我想发送电子邮件到我们的支持电子邮件。任何意见将是有益的。我对批处理命令有一定的了解,但不是专家。
答案 0 :(得分:0)
@echo off
setlocal enableextensions disabledelayedexpansion
set "file1=c:\somewhere\file1.log"
set "file2=c:\otherplace\file2.log"
set "sameFileCount=0"
for /f %%a in ('
xcopy /d /l /y "%file1%" "%file2%" ^& xcopy /d /l /y "%file2%" "%file1%"
') do if "%%a"=="0" set /a "sameFileCount+=1"
if not %sameFileCount%==2 (
echo Files have different timestamps
rem Your mail command here
)
这将执行两个xcopy命令,将file1复制到file2,将file2复制到file1,但是
/l
开关将生成命令"模拟"操作,只获取将被复制的文件列表,但不复制任何内容。/d
开关表示"复制"只有在文件戳不同的情况下才能进行操作。如果两个命令都没有指示必须复制文件(它们表示要复制的0个文件),则文件具有相同的时间戳。