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

[文件操作] 批处理怎样读取txt文件中的字符串,并依次在指定的文件夹名包含每一行的文件?

[复制链接]
发表于 2013-10-24 16:02:32 | 显示全部楼层 |阅读模式
编写一个批处理文件,在指定的文件夹下查找文件名包含字符串,
要查找的字符串事先已经存储在一个txt文件中了

例如c盘根目录下有一个txt文件c:\1.txt内容如下
100843+1.jpg
100843+1.jpg
100843+1.jpg
10054438+1.jpg
10054438+1.jpg
执行批处理后,自动读取上面的txt文件中的字符串,并依次在指定的文件夹中搜索文件名包含每一行的文件,之后把它复制到一个新的指定的目标文件夹里
发表于 2013-10-24 17:11:13 | 显示全部楼层
描述得云里雾里。。。
还请组织好自己的语言再提问,这样将有助于快速有效地解决你的问题。。。
发表于 2013-10-24 18:03:06 | 显示全部楼层
按A.txt里的文件名在D盘中搜索并COPY到E盘根目录.
  1. @echo off
  2. for /f "delims=" %%i in (a.txt) do (
  3.         for /f "delims=" %%j in ('dir d:\%%i /s /b 2^>nul') do (copy /y "%%j" e:\)
  4. )
  5. pause
复制代码
发表于 2013-10-24 22:12:59 | 显示全部楼层
100843+1.jpg
100843+1.jpg
100843+1.jpg
是什么意思啊 三个同名文件不可能在同一文件夹里的
即便是包含字符的话 那也只要一行就可以了
发表于 2013-10-24 22:46:15 | 显示全部楼层
看完描述我“被”晕了
发表于 2013-10-25 19:13:13 | 显示全部楼层
本帖最后由 digger 于 2013-10-25 19:14 编辑
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "delims=" %%i in (5.txt) do (
  3.    if not defined %%i (
  4.          set %%i=b&set p=%%i
  5.    for /r %%j in (!p!) do (
  6.       set d=%%~dpj
  7.     if not exist d:\!p! (
  8.         if exist !d!!p! copy "!d!!p!" "d:"
  9.          ) else (
  10.      ren "!d!!p!" "1!p!"&copy "!d!1!p!" "d:"
  11. ))))
  12. pause
复制代码
 楼主| 发表于 2013-10-25 20:18:19 | 显示全部楼层
回复 2# batman


    非常的不好意思。我表达能力欠缺。。不过看到各位给的回复,真的很给力
 楼主| 发表于 2013-10-25 20:24:09 | 显示全部楼层
回复 5# Lumiere


    谢谢回复
发表于 2013-11-29 00:50:19 | 显示全部楼层
谢谢lz分享。。。。。。。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-20 18:36 , Processed in 0.030697 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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