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

[文件操作] 批处理,如何找出许多没有“XXX.jpg”文件 所在的文件夹。

说明:一个目录下有多个文件夹,我想找出不含有 宗地图,jpg这个文件的文件夹,并把不含有“XXX.jpg”文件的文件夹的路径写到一个txt中,如何完成,请高手指教。

本帖最后由 xxpinqz 于 2014-4-19 20:12 编辑

http://www.bathome.net/thread-29796-1-1.html
重复发帖还是两种要求?
1、删除
  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f "delims=" %%a in ('dir /b/s/ad^|sort /r') do (  
  3.     if exist "%%a\*宗地图*.jpg" (
  4.     set "dst=%%~dpa"
  5.     ) else (
  6.         if /I not "%%~a\"=="!dst!" set "dst="
  7.     )
  8.     if not defined dst echo,rd /q "%%a"
  9. ))
  10. pause
复制代码
2、输出
  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f "delims=" %%a in ('dir /b/s/ad^|sort /r') do (  
  3.     if exist "%%a\*宗地图*.jpg" (
  4.     set "dst=%%~dpa"
  5.     ) else (
  6.         if /I not "%%~a\"=="!dst!" set "dst="
  7.     )
  8.     if not defined dst echo,"%%a"
  9. ))>no.txt
  10. pause
复制代码
初学BAT,非专业。代码不适当之处还望前辈们多多指点。在此表示感谢!

TOP

感觉楼主的意思是这样 理解错了?
  1. @echo off
  2. (for /f "delims=" %%i in ('dir /b/s/ad') do if not exist "%%i\*宗地图.jpg" if not exist "%%i\xxx.jpg" echo,%%i)>no.txt
  3. pause
复制代码

TOP

非常感谢,两位高手的指教,太感谢你们了,向你们学习,上面是我太粗心了,表述有问题,那个“宗地图.jpg”和“XXX,jpg”是同一个文件,写的时候没有统一,再次感谢你们。
向你们学习,我也在学习,但是好像找不着学习这个的方法,像无头苍蝇一样,你们能给我点建议吗??谢谢。

TOP

把“批处理教程&资料”版块的几个置顶贴看完就会了,顺便抽空做下“新手练功区”。我去年就这么学的。
初学BAT,非专业。代码不适当之处还望前辈们多多指点。在此表示感谢!

TOP

返回列表