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

[文件操作] [已解决]批处理怎样只处理根目录指定类型的文件?

如把u盘根目录里面包括隐藏的文件(不包括文件夹)都列出来,类型确定了的如*.exe *.bat *.vbs *.dll.而且能够一个个针对它们进行单独的处理。dir 命令可以列出文件(包括隐藏文件),但是不能一个一个单独的进行处理。如dir /b k:\*.exe *.vbs *.dll ,用for命令可以单个处理文件,但要把每个类型写一个for语句,而且隐藏的文件显示不了。用attrib去掉隐藏的属性吗,有时候这个命令放开头还好用,但是放中间的时候老是出错,不知道是不是有什么技巧。用for只能用for /r 不能用for /d 。这样的话就把子目录里面的文件也弄出来了,不知道该怎么处理这个问题了。请大家指点下。

[ 本帖最后由 abxialiang 于 2009-12-16 11:52 编辑 ]

但是不能一个一个单独的进行处理。

一个个单独处理是指什么?

TOP

可以FOR dir 结合啊

TOP

回复 1楼 的帖子

关于attrib出错的问题我已在你前面的贴子中说明了,至于这里的问题也很简单,代码如下(代码中是对其进行删
除,请楼主根据自己的需要修改):
  1. @echo off
  2. attrib -a -h -r -s *.*
  3. for /f "delims=" %%a in ('dir /a-d /b') do (
  4.      set "flag="
  5.      for %%b in (.exe .vbs .bat .dll) do if "%%~xa" equ "%%b" set "flag=a"
  6.      if defined flag del /f /q "%%a"
  7. )
复制代码

[ 本帖最后由 batman 于 2009-12-15 15:26 编辑 ]
***共同提高***

TOP

回复 4楼 的帖子

真不愧是版主啊,真是佩服,也不知道什么时候我也能达到你这水平呢。

TOP

回复 5楼 的帖子

这是批处理中for命令的基本用法,如果想学习,可以参考:批处理for命令从入门到精通
http://bbs.bathome.net/thread-2189-1-1.html
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表