标题: [文件操作] [已解决]批处理实现循环60秒监控文本文件是否被修改的功能 [打印本页]
作者: batnoob 时间: 2017-11-9 11:03 标题: [已解决]批处理实现循环60秒监控文本文件是否被修改的功能
脚本如下,出了一个问题,就是循环后60秒内文本没被修改过,if not "!filedat_new!" == "!filedat_old!" 依然成立,提示被修改,搞得我头大,没有头绪,求各位帮忙分析下问题在哪,谢谢!- @echo off& color a
- setlocal EnableDelayedExpansion
- cd /d D:\
-
- for /f %%i in ( 'dir /b a.txt') do (
- set filedat_old=%%~ti
- echo 旧文件修改时间:!filedat_old! )
-
- :loop
- ping -n 60 127.1>nul
- for /f %%i in ('dir /b a.txt') do (
- set filedat_new=%%~ti
- echo 新文件修改时间:!filedat_new! )
-
- echo 旧文件修改时间:!filedat_old!
- if not "!filedat_new!" == "!filedat_old!" (
- echo 文件修改时间有变动!
- set filedat_old=!filedat_new! )
- goto loop
复制代码
错误信息图片如下:
作者: lifei259 时间: 2017-11-9 11:46
本帖最后由 lifei259 于 2017-11-9 11:47 编辑
- @echo off& color a
- setlocal EnableDelayedExpansion
- cd /d D:\
- :loop
- for /f %%i in ( 'dir /b a.txt') do (
- set filedat_old=%%~ti
- echo 旧文件修改时间:!filedat_old! )
- ping -n 60 127.1>nul
- for /f %%i in ('dir /b a.txt') do (
- set filedat_new=%%~ti
- echo 新文件修改时间:!filedat_new! )
- if not "!filedat_new!" == "!filedat_old!" (
- echo 文件修改时间有变动! )
- goto loop
复制代码
作者: batnoob 时间: 2017-11-9 12:53
谢谢你的解答,这个能通过,现在比解决这个问题,我更想知道这个折磨我的问题是啥原因?
如果能解答一番,十分感激!
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |