找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 26076|回复: 3

[文件操作] 根据指定文本中列出的字符串全盘查找文件名中含有某个字符串的图片并复制到指定目录里

[复制链接]
发表于 2016-11-20 12:24:31 | 显示全部楼层 |阅读模式
本帖最后由 pcl_test 于 2016-11-20 19:00 编辑

请教一个批量查找图片并复制到指定文件夹的BAT
我现在想从我的电脑中将符合“查找.txt”(全是人名),查询出来并复制到F盘“查找到图片”文件夹中,以下这代码只能查询f盘“数据”文件夹,不能全盘查找,注:图片名字可能是图片文件名包含有名字,查找.txt文件中只是名字,比如:图片的文件名是"广东_张三(1).JPG",请教各位老师帮忙写个批处理,谢谢!
  1. @echo off
  2. for /f "delims=" %%a in (查找.txt) do (
  3.     copy /y "F:\数据\*%%a*.jpg" "F:\查找到图片"
  4. )
复制代码

评分

参与人数 1PB -2 收起 理由
pcl_test -2 发帖前先使用论坛搜索

查看全部评分

 楼主| 发表于 2016-11-21 12:14:12 | 显示全部楼层
回复 1# sohoxs


    版主你好,我没找着,都是查找txt文本内容的,谢谢!
发表于 2016-11-23 00:30:44 | 显示全部楼层
不知道你说的全盘是什么意思,F整个分区还是所有分区?
  1. @echo off&setlocal enabledelayedexpansion
  2. set "fd=F:\查找到图片"
  3. md "%fd%" 2>nul
  4. for /f "delims=" %%a in ('type "查找.txt"') do set "#%%a=%%a"
  5. for %%a in (c d e f g h i j k l m n) do (
  6.     if exist %%a:\ (
  7.         for /f "delims=" %%a in ('dir /a-d/b/s %%a:\*.jpg') do (
  8.             set "fn=%%~nxa"
  9.             if /i "%%~dpa" neq "%fd%" (
  10.                 for /f "tokens=2 delims==" %%c in ('set #') do (
  11.                     if "!fn:%%c=!" neq "%%~nxa" (
  12.                         if exist "%fd%%%~nxa" (
  13.                             rem 处理可能的同名文件
  14.                             set /a n+=1
  15.                             copy "%%a" "%fd%!n!_%%~nxa"
  16.                         ) else copy "%%a" "%fd%"
  17.                     )
  18.                 )
  19.             )
  20.         )
  21.     )
  22. )
  23. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
sohoxs + 1 谢谢

查看全部评分

 楼主| 发表于 2016-11-29 12:38:50 | 显示全部楼层
本帖最后由 sohoxs 于 2016-11-29 12:40 编辑

回复 3# pcl_test


  不好意思,前几天有事外出了,没能及时回复,试了下非常好用,非常感谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 14:07 , Processed in 0.019649 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表