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

[文件操作] 批处理怎样查找含有制定字符的指定类型的文件?

全盘查找含有关键词:音乐  电影 小说 的 mp3 rm avi wma txt rar 的文件 ,并复制到的d:\cd 文件夹中。

  1. @echo off
  2. for %%a in (d c e f) do (
  3. cd /d %%a
  4. for /f "delims=" %%b in ('dir /s /b /a-d *.mp3 *.rm *.avi *.wma *txt *rar') do copy "%%~fb" "d:\cd\"
  5. )
复制代码
但是通配符只能匹配后缀名前三位
1

评分人数

    • ooaf: 乐于助人技术 + 1

TOP

  1. for %%a in (d c e f) do (
  2. cd /d %%a
  3. for /f "delims=" %%b in ('dir /s /b /a-d *.mp3 *.rm *.avi *.wma *txt *rar'^|findstr /v /i "音乐  电影 小说"') do copy "%%~fb" "d:\cd\"
  4. )
复制代码

[ 本帖最后由 ooaf 于 2011-2-20 19:43 编辑 ]
1

评分人数

    • Batcher: 请编辑自己的帖子,把代码放到code标签里面 ...PB -2

TOP

回复 2楼 的帖子

但是通配符只能匹配后缀名前三位,  是什么意思? rmvb 格式的不行吗?

TOP

  1. @echo off&setlocal enabledelayedexpansion
  2. set wjm=
  3. for %%a in (mp3 rm rmvb avi wma txt rar) do (
  4.    for %%b in (音乐  电影 小说) do set "wjm= !wjm! *%%b*.%%a "
  5. )
  6. endlocal&set wjm=%wjm%
  7. for %%a in (d c e f) do (
  8.    cd /d %%a:
  9.    for /f "delims=" %%b in ('dir/s/b/a-d %wjm%') do copy "%%b" "d:\cd\"
  10. )
  11. pause
复制代码
1

评分人数

    • ooaf: 乐于助人技术 + 1
技术问题请到论坛发帖求助!

TOP

setlocal enabledelayedexpansion
******
endlocal

这个学习了,多谢!

TOP

返回列表