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

[文件操作] 批处理如何通过判断条件删除某个文件夹中的文件?

多个文件夹中其中一个文件夹中只包含多个【****~q75】文件。另一个文件夹中包含多个【****~q75】 和 【****~tplv-dy-aweme-imagesq75】。求助如何只删除第二个文件夹中 所有的【****~q75】不删除第一个文件夹中的。

  1. pushd 第二个文件夹
  2. del
  3. popd
复制代码

TOP

由于是有多个文件夹如何判断那个文件夹只包含【****~q75】不操作。只操作包含【****~q75】 和 【****~tplv-dy-aweme-imagesq75】的文件夹呢

TOP

先备份测试
  1. for /d %%i in (*) do (
  2. if exist "%%i\*~tplv-dy-aweme-imagesq75" (del %%i\*~q75)
  3. )
  4. pause
复制代码

TOP

本帖最后由 77七 于 2023-3-3 13:21 编辑
  1. @echo off
  2. for /f "delims=" %%i in ('dir /b /s /a-d "*~tplv-dy-aweme-imagesq75"') do (
  3.         del "%%~dpi*~q75" 2>nul
  4. )
  5. pause
复制代码
  1. @echo off
  2. for /f "delims=" %%i in ('dir /b /s /a-d "*~tplv-dy-aweme-imagesq75"') do (
  3.         del "%%~dpi*~q75"
  4.         pause & exit
  5. )
复制代码

前面一句好像是干扰项...也就是删除*~tplv-dy-aweme-imagesq75 同路径下的*~q75
使用前先备份

第二段代码好像有点问题
  1. @echo off
  2. for /f "delims=" %%i in ('dir /b /s /a-d "*~tplv-dy-aweme-imagesq75"') do (
  3.         del "%%~dpi*~q75" 2>nul && (pause & exit)
  4. )
复制代码


这样应该更好一点
bat小白,请多指教!谢谢!

TOP

回复 4# buyiyang
好像是楼主忘记提供文件扩展名了。应当是:
  1. for /d %%i in (*) do (
  2.     if exist "%%i\*~tplv-dy-aweme-imagesq75*" (
  3.         del "%%i\*~q75*"
  4.     )
  5. )
复制代码

TOP

回复 6# qixiaobin0715


    感谢指导

TOP

返回列表