Board logo

标题: [文件操作] 批处理怎样循环监测文件大小? [打印本页]

作者: 李某人    时间: 3 天前 20:20     标题: 批处理怎样循环监测文件大小?

新人试着想找到一个解决办法

各位好 有个问题需要大家帮助下  先谢谢各位

能否做一个批处理文件,打开后一直监测一个文件夹里边生成的文件(这个文件夹每分钟生成一个txt格式文件,这个文件名称是随机生成的),但是我需要监测的时文件大小

正常生成都是6KB大小的,偶尔会生成一个1KB大小的文件

我想让这个批处理文件一直循环监测这个文件夹 它一旦生成这个1kb的TXT文件,瞬间退出一个服务程序,比如退出这个程序叫Jeff.exe
作者: hlzj88    时间: 3 天前 23:28

for /f "delims=" %%i in ('dir /b/on D:\123\*.txt') do if %%~zi lss 2048 taskkill /f /t /im Jeff.exe&&del /f/q d:\123\%%i

结束程序后并删除那个小于2k的txt,不需要删除也可修改
作者: wanghan519    时间: 前天 05:28

本帖最后由 wanghan519 于 2024-12-26 05:40 编辑

试了一下busybox.exe,也挺好用,主要有个inotifyd来监视文件夹变化
  1. #&cls&busybox ash -ueo pipefail "%~0"&pause&exit
  2. inotifyd - test:c | while read a b c; do
  3.     if [[ `stat -c '%s' $b'/'$c` -lt 6000 ]]; then
  4.         taskkill /f /t /im Jeff.exe
  5.     fi
  6. done
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2