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

[文件操作] 批处理如何实现按照指定规则重命名的批复制?

欲实现批复制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
...........
..........
-----------------------------------------------------

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

TOP

本帖最后由 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. )
复制代码

TOP

回复 3# apang


    关于“%%~nxa”的相关知识属于哪个知识点?要在哪里学到呢?

TOP

回复  apang


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


1.命令提示符下输入:for /? 然后回车
2.论坛搜索:变量扩展
3.这里:http://bbs.bathome.net/viewthrea ... 4%C1%BF%C0%A9%D5%B9

TOP

多谢,多谢!!!

TOP

返回列表