无忧启动论坛

标题: [已解决]求助,p监控指定文件夹,新增包含有特定字符的文件夹时自动删除比新增 [打印本页]

作者: qinyuming452    时间: 2020-8-7 07:46
标题: [已解决]求助,p监控指定文件夹,新增包含有特定字符的文件夹时自动删除比新增
本帖最后由 qinyuming452 于 2020-8-11 21:27 编辑

结合各位大大的指导,
使用计划任务来实行脚本。
监控指定的 C:\DATA文件夹,
发现有新增有包含有特定字符(KD的文件夹名字的时候,
比如在C:\DATA文件夹下面监控到新增加了名为:abc(KD778-V11)1P文件夹
自动删除比新增加的文件夹修改日期旧的包含有特定字符(KD的文件夹,
只保留这个最新的增加的文件夹,

同时删除掉board.inf文件中对应的行,
也只保留最新的增加的文件夹对应的行。

board.inf文件中对应的行
abc(KD778-V11)1P abc(KD778-V11)1P C:\DATA\abc(KD778-V11)1P\ RRZK3591B-8-4(BB0043430)
cba(KD778-V12)1P cba(KD778-V12)1P C:\DATA\cba(KD778-V12)1P\ RRZK3591B-5-4(BB0043587)
debugbox debugbox C:\DATA\debugbox\

现在找到一个可以实现删除的bat了,但不知道如何对和inf文件进行操作
@echo off&setlocal enabledelayedexpansion
pushd "C:\DATA"
set n=2
set m=0
for /f "delims=" %%a in ('dir "*(KD*" /ad /b /o-d') do (
set /a m+=1
if !m! gtr !n! rd /q /s "%%~nxa"
)
@echo 任务完成
exit


board.ini.zip

254 Bytes, 下载次数: 1, 下载积分: 无忧币 -2


作者: qinyuming452    时间: 2020-8-7 09:28
edison_2008 发表于 2020-8-7 09:08
脚本实现比较难吧。主要是动作太多,可以找个文件夹监控软件试试

那么如果仅仅只是保留特定字符的最新那那个文件夹,
其它含有特定字符的旧日期的文件夹进行删除?
这样应用怎样批处理来实现
作者: qinyuming452    时间: 2020-8-7 10:05
edison_2008 发表于 2020-8-7 09:08
脚本实现比较难吧。主要是动作太多,可以找个文件夹监控软件试试

或者这样的,加计划任务中,定时运行
批量删除含有某个关键字的文件夹(包括所有子文件夹、所有文件)?
保留一个含有某个关键字的文件夹修改日期最新文件夹,
比如C:\DATA目录下
分别有文件夹名为
abc123cbh      修改时间2020-08-07 9:30
bac123bag      修改时间2020-08-07 9:40
cba123bad      修改时间2020-08-07 9:50

删除含有123的且修改时间2020-08-07 9:30和9:40的文件夹(包括子文件夹、文件)
保留9:50的这个文件夹及下边的子文件夹和文件
作者: qinyuming452    时间: 2020-8-7 12:39
edison_2008 发表于 2020-8-7 11:25
是这么个情况,如果实时监控,脚本实现占用资源非常高,因为没有内存优化的过程,还不如软件来的好。

如 ...

如果是使用计划任务的话,能实现删除功能嘛,
作者: qinyuming452    时间: 2020-8-7 12:45
edison_2008 发表于 2020-8-7 11:25
是这么个情况,如果实时监控,脚本实现占用资源非常高,因为没有内存优化的过程,还不如软件来的好。

如 ...

现在找到一个可以实现删除的bat了,但不知道如何对和inf文件进行对应的操作

@echo off&setlocal enabledelayedexpansion
pushd "C:\DATA"
set n=2
set m=0
for /f "delims=" %%a in ('dir "*(KD*" /ad /b /o-d') do (
set /a m+=1
if !m! gtr !n! rd /q /s "%%~nxa"
)
@echo 任务完成
exit
作者: yzw92    时间: 2020-8-9 10:01
一如既往的支持!
作者: nttwqz    时间: 2020-8-9 15:05
  1. @echo off&setlocal enabledelayedexpansion
  2. pushd "C:\DATA"
  3. for /f "skip=1 delims=" %%a in ('dir "*(KD*" /ad /b /o-d') do (
  4.     rd /q /s "%%~nxa" >nul 2>nul
  5.     echo;%%~nxa
  6. )>"%temp%\tmp.tmp"
  7. findstr /i /v /g:"%temp%\tmp.tmp" board.inf>board.inf2  2>nul
  8. del /f /q "%temp%\tmp.tmp">nul 2>nul
  9. del /f /q board.inf>nul 2>nul
  10. ren board.inf2 board.inf
  11. echo 任务完成
  12. pause
复制代码

作者: qinyuming452    时间: 2020-8-11 21:24
nttwqz 发表于 2020-8-9 15:05

感谢,问题已解决
作者: szwp    时间: 2020-8-17 08:19
没看慬p监控的p表示什么




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3