Board logo

标题: [文件操作] 批处理如何实现按照指定规则重命名的批复制? [打印本页]

作者: 宫商角徵羽    时间: 2013-1-2 11:06     标题: 批处理如何实现按照指定规则重命名的批复制?

欲实现批复制Names.txt中所列各文件,分别复制两次并命名为 “原文件名02.mp3”  "原文件名03.mp3"


用FOR语句遇到问题:1、Names.txt中的文件名存在空格如何读取?
                              2、重命名后中如何将"复件02"、"复件03"等字符添加到原文件名和后缀中间?(原文件名+复件02+后缀)



用Findstr找到文件夹下的文件名列表如下:
------------Names.txt-----------------------------
abroad .mp3            【此行空格】
abroad-CN.mp3       【此行空格】
accelerate .mp3      
accelerate-CN.mp3
airline .mp3            
airline-CN.mp3
atmosphere .mp3   
atmosphere-CN.mp3
barber .mp3            
barber-CN.mp3
...........
..........
-----------------------------------------------------
作者: QIAOXINGXING    时间: 2013-1-2 11:23

  1. for /f "delims=" %%a in (11.txt) do (
  2.   echo;"%%~na-复件02-%%~xa"
  3. )
复制代码

作者: apang    时间: 2013-1-2 11:55

本帖最后由 apang 于 2013-1-2 12:09 编辑
  1. @echo off
  2. for /f "delims=" %%a in (names.txt) do (
  3.   copy "%%~nxa" "%%~na复件02%%~xa" 2>nul
  4.   copy "%%~nxa" "%%~na复件03%%~xa" 2>nul
  5. )
复制代码

作者: 宫商角徵羽    时间: 2013-1-2 13:43

回复 3# apang


    关于“%%~nxa”的相关知识属于哪个知识点?要在哪里学到呢?
作者: apang    时间: 2013-1-2 14:56

回复  apang


    关于“%%~nxa”的相关知识属于哪个知识点?要在哪里学到呢?
宫商角徵羽 发表于 2013-1-2 13:43


1.命令提示符下输入:for /? 然后回车
2.论坛搜索:变量扩展
3.这里:http://bbs.bathome.net/viewthrea ... 4%C1%BF%C0%A9%D5%B9
作者: 宫商角徵羽    时间: 2013-1-2 15:32

多谢,多谢!!!




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