Board logo

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

作者: batLiuQi    时间: 2013-10-24 16:02     标题: 批处理怎样读取txt文件中的字符串,并依次在指定的文件夹名包含每一行的文件?

编写一个批处理文件,在指定的文件夹下查找文件名包含字符串,
要查找的字符串事先已经存储在一个txt文件中了

例如c盘根目录下有一个txt文件c:\1.txt内容如下
100843+1.jpg
100843+1.jpg
100843+1.jpg
10054438+1.jpg
10054438+1.jpg
执行批处理后,自动读取上面的txt文件中的字符串,并依次在指定的文件夹中搜索文件名包含每一行的文件,之后把它复制到一个新的指定的目标文件夹里
作者: batman    时间: 2013-10-24 17:11

描述得云里雾里。。。
还请组织好自己的语言再提问,这样将有助于快速有效地解决你的问题。。。
作者: foxJL    时间: 2013-10-24 18:03

按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
复制代码

作者: terse    时间: 2013-10-24 22:12

100843+1.jpg
100843+1.jpg
100843+1.jpg
是什么意思啊 三个同名文件不可能在同一文件夹里的
即便是包含字符的话 那也只要一行就可以了
作者: Lumiere    时间: 2013-10-24 22:46

看完描述我“被”晕了
作者: digger    时间: 2013-10-25 19: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
复制代码

作者: batLiuQi    时间: 2013-10-25 20:18

回复 2# batman


    非常的不好意思。我表达能力欠缺。。不过看到各位给的回复,真的很给力
作者: batLiuQi    时间: 2013-10-25 20:24

回复 5# Lumiere


    谢谢回复
作者: hzcxdgioa    时间: 2013-11-29 00:50

谢谢lz分享。。。。。。。。。




欢迎光临 批处理之家 (http://bathome.net./) Powered by Discuz! 7.2