标题: [文件操作] 批处理如何根据excel表格的内容批量修改文件名 [打印本页]
作者: 511182890 时间: 2016-1-6 14:33 标题: 批处理如何根据excel表格的内容批量修改文件名?6楼有新的总结
改名前文件名:
AD1011奥迪车.DSN
AD1011-G1101-AA.DSN
AD1011-G1101-AA-118-主副背料-四向-749.dxf
AD1011-G1101-AA-118-主副背料-四向-(12345)-749.dxf
改名后文件名:
AD1011T奥迪车.DSN
AD1011T-G1101-AA.DSN
AD1011T-G1101-AA-118-主副背料-四向-749.dxf
AD1011T-G1101-AA-118-主副背料-四向-(12345)-749.dxf
需要改的名字全部在一个表格中,现在能不能用批处理调用表格改名。一个个改的软件我有!
麻烦各位大仙大神了。
作者: 511182890 时间: 2016-1-6 15:26
用ren命令怎么改,有包括子文件夹
作者: pcl_test 时间: 2016-1-6 16:18
txt不好?
水一发,读取表格内容- /*&cls
- @echo off
- ::设置表格路径
- set "xlsfile=D:\改名.xls"
- cscript -nologo -e:jscript "%~f0" "%xlsfile%"
- pause&exit
- */
-
- var objExcel = new ActiveXObject('Excel.Application');
- var objBook = objExcel.Workbooks.open(WScript.Arguments(0));
- objBook.worksheets(1).activate; //设置Sheet1为活动工作表
- var objSheet = objBook.activeSheet;
- var cnt = objSheet.usedrange.rows.count;
- for(var i = 2; i<=cnt; i++) { //从第2行开始
- var A= objSheet.Cells(i, 1).value; //A列
- var B= objSheet.Cells(i, 2).value; //B列
- WSH.echo(A+' --> '+B);
- }
- objBook.Close();
- objExcel.Quit();
复制代码
作者: pcl_test 时间: 2016-1-6 16:25
来个第三方
ren2 -f -r "(AD1011)([^T].*)" "$1T$2"
作者: 511182890 时间: 2016-1-7 15:23
回复 4# pcl_test
二种方法表示都不行。
作者: 511182890 时间: 2016-1-21 11:17 标题: 批处理如何根据excel表格的内容批量修改文件名
- @echo off
- setlocal enabledelayedexpansion
- for /f "delims=" %%a in ('dir /a-d/b/s/q *.*') do (
- set "var=%%~na"
- set newn=!var:AD1011=AD1011T!
- ren "%%a" "!newn!%%~xa"
- )
- for /f "delims=" %%a in ('dir /a-d/b/s/q *.*') do (
- set "var=%%~na"
- set newn=!var:AD1012=AD1012T!
- ren "%%a" "!newn!%%~xa"
- )
- for /f "delims=" %%a in ('dir /a-d/b/s/q *.*') do (
- set "var=%%~na"
- set newn=!var:AD1013=AD1013T!
- ren "%%a" "!newn!%%~xa"
- )
- echo end...
- pause
复制代码
已有代码,我需要改的名字有5000个左右,所有包含子目录有17000个文件夹,400W文件,求优化。上面这个代码把5000个左右的文件都填,有这么多的文件夹,扫描就卡死了。
求个方便处理的程序。
这是一部分文件名
作者: pcl_test 时间: 2016-1-21 20:23
只想说,假设已有一个文件名为AD1011Txxxxx,你6楼的代码没做筛选,那么改名后就是AD1011TTxxxxx了
作者: codegay 时间: 2016-1-22 00:12
可以考虑把excel转成CSV文件。批处理读取csv方便。
作者: CrLf 时间: 2016-1-22 00:15
http://www.bathome.net/s/tool/index.html?key=excel
作者: 511182890 时间: 2016-1-23 14:52
回复 7# pcl_test
是的,我后来全部加了“-”
作者: codegay 时间: 2016-1-26 23:44
回复 9# CrLf
- c:\>excel /?
- This program needs Java to run.
- Please download it at http://www.java.com
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |