[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] [分享]批处理根据关键字删除指定文件夹下的某些文件

【问题描述】





当前目录里有如图1所示若干个文件夹,每个文件夹里都有如图2所示的若干个txt文档,现在想删除含有1ST的文件夹中删除除了pass以外的所有txt文档
  1. @Echo off
  2. cd /d %~dp0
  3. set "folder_str=1ST"
  4. set "name_str=pass"
  5. set /p sel_path=请输入当前文件路径:
  6. dir /b /a-a | findstr /i "%folder_str%" >222.txt
  7. for /f "delims=" %%i in (222.txt) do (
  8. dir /b "%sel_path%"\%%i | findstr /i /v "%name_str%" >> "%sel_path%"\111.txt
  9. )
  10. for /f "delims=" %%j in (111.txt) do (
  11. del /a/f/s %%j
  12. )
  13. pause
复制代码
用了笨方法执行成功了,但是看起来太笨了
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

【解决方案】

test_1.bat 请参考Q-04把bat文件保存为ANSI编码:
https://mp.weixin.qq.com/s/Koje4FufWxWBs7ioDy_LJA
  1. @echo off
  2. cd /d "%~dp0"
  3. for /f "delims=" %%i in ('dir /b /ad *1ST*') do (
  4.     for /f "delims=" %%j in ('dir /b /a-d "%%i\*.txt" ^| findstr /v /i "pass"') do (
  5.         del /f /q "%%i\%%j"
  6.     )
  7. )
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表