如何使用批处理检测.txt文件中的更改



我做了一个简单的局域网聊天批处理文件,我想知道如果有一个命令可以检查特定的TXT文件是否被更新。聊天记录存储在log.dat中,当有新消息时,我想要有一个声音通知或类似的东西。

@echo off
title LAN chat reader
call Color.bat
:read
call Color.bat
cls
type log.dat
timeout /t 3 /nobreak >nul
goto read

(我是新手,请告诉我是否可以)

查看文件日期/时间使用for%%~t前缀:

@echo off
title LAN chat reader
setlocal enableDelayedExpansion
:read
    call Color.bat
    cls
    type log.dat
    for %%a in (log.dat) do set filetimesize=%%~tza
    :checkupdate
        ping -n 1 -w 100 localhost >nul
        for %%a in (log.dat) do if "!filetimesize!"=="%%~tza" goto checkupdate
    echo updated
    goto read

wOxxOm已经给出了检查更新文件的解决方案。

这是一种产生声音的方法:

copy con bell.txt

然后按住ALT键输入007,然后释放ALT键。^G应该出现在屏幕上(= 0x07,这是一个Bell),然后按Ctrl-Z。这给你一个长度= 1字节的文本文件

Type bell.txt

将发出蜂鸣声。

EDIT生成bell.txt的更简单方法:在命令行上输入echo ^G>bell.txt(要生成^G,按CTRL - G)。这将创建一个三字节的文件(而不是使用copy技巧的一字节文件)(但这只是换行,不应该干扰)。

相关内容

  • 没有找到相关文章

最新更新