批处理获取文件修改时间
批处理获取文件D:\1.txt的修改时间并把修改时间放入另一个文件中D:\2.txt每次运行时进行比较1.txt与2.txt的时间是否相同如果不同发出邮件...
批处理获取文件D:\1.txt 的修改时间并把修改时间放入另一个文件中D:\2.txt
每次运行时进行比较1.txt 与2.txt 的时间是否相同如果不同发出邮件 展开
每次运行时进行比较1.txt 与2.txt 的时间是否相同如果不同发出邮件 展开
1个回答
展开全部
以下批处理能实现:
1、每次检查1.txt的修改时间
2、与上一次记录的时间对比
3、相同不做任何处理,不同则在2_log.txt中记1笔时间变化记录
4、更新2.txt的时间
请把下面的批处理存为mymonitor.bat
@echo off
@if not exist 2.txt @for /f "tokens=1,2 delims= " %%a in ('dir d:\1.txt^|find "20"') do @echo %%a %%b>2.txt
@for /f "tokens=1,2 delims= " %%a in ('dir d:\1.txt^|find "20"') do @echo %%a %%b>_2.txt
@set /p old= <2.txt
@set /p new= <_2.txt
@if not %old%==%new% (
@echo Record %date% %time%: file %1 modified time changed to %new%>>2_log.txt
@del 2.txt
@ren _2.txt 2.txt
)
自动发送邮件这个我就没办法了,有个smtpsend.exe可以实现cmd下发邮件,但您的域里必须有台smtp服务器才行,如果您有那从网上就能下载,写好命令加到最后一行括号前就行了。
1、每次检查1.txt的修改时间
2、与上一次记录的时间对比
3、相同不做任何处理,不同则在2_log.txt中记1笔时间变化记录
4、更新2.txt的时间
请把下面的批处理存为mymonitor.bat
@echo off
@if not exist 2.txt @for /f "tokens=1,2 delims= " %%a in ('dir d:\1.txt^|find "20"') do @echo %%a %%b>2.txt
@for /f "tokens=1,2 delims= " %%a in ('dir d:\1.txt^|find "20"') do @echo %%a %%b>_2.txt
@set /p old= <2.txt
@set /p new= <_2.txt
@if not %old%==%new% (
@echo Record %date% %time%: file %1 modified time changed to %new%>>2_log.txt
@del 2.txt
@ren _2.txt 2.txt
)
自动发送邮件这个我就没办法了,有个smtpsend.exe可以实现cmd下发邮件,但您的域里必须有台smtp服务器才行,如果您有那从网上就能下载,写好命令加到最后一行括号前就行了。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询