dos(批处理)或VBS脚本批量重命名及修改批量修改文件内容

dos(批处理)或VBS脚本批量重命名及修改批量修改文件内容

比方说,
1.有一个1234.csv的文件,里面内容全为数据(A1为8A12345678,A2为

8A12345679;B1为001d92123456,B2为001d92123457等)
PS:A栏实际为测试数据里的S/N值,B栏为测试数据里的MAC值

2.有一个8A12345688.txt的文件,里面内容是一些测试数据,其中包含类似

1234.scv内容里的A栏和B栏信息,如:“S/N: 8A18517507”、“Writing MAC

002185EE0E39”、“Write MAC (002185EE0E39)”等

要求:
通过批处理或脚本文件,自动依1234.csv里的内容重命名或另存为新的TXT格式文件,且此文件的文件名与1234.csv里的A栏内容一一相同
例如:1234.csv里的A1=8A18517507,B1=002185EE0E39,则新的TXT文件名为8A18517507,其内容包含:“S/N: 8A18517507”、“Writing MAC
002185EE0E39”、“Write MAC (002185EE0E39)”

以上,万分感谢!

写好了.

@echo off
for /f "tokens=1,2 delims=," %%i in ('type "1234.csv"') do (
(
(echo S/N:%%i)
(echo Writing MAC %%j)
(echo Write MAC ^(%%j^))
)>"%%i.txt"
)
pause

测试:
1234.csv(Excel保存的逗号分隔符文件)用记事本打开内容是:
8A18517507,002185EE0E39
8A12345678,001d92123456
8A12345679,001d92123457
运行结果:
文件:
8A12345678.txt
内容:
S/N:8A12345678
Writing MAC 001d92123456
Write MAC (001d92123456)
文件:
8A12345679.txt
内容:
S/N:8A12345679
Writing MAC 001d92123457
Write MAC (001d92123457)
文件:
8A18517507.txt
内容:
S/N:8A18517507
Writing MAC 002185EE0E39
Write MAC (002185EE0E39)
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-11-12
我想问下:
你的1234.csv是不是里面保存的是文本格式的内容..例如
A1 8A12345678 B1 001d92123456
A2 8A12345679 B2 001d92123457

是这样的顺序吗?
第2个回答  2008-11-13
如果你的csv文件只是有两列,那么就这样

@echo off
for /f "tokens=1,2 delims=," %%i in (1234.csv) do (
if exist %%i.txt del %%i.txt
echo "S/N:%%i"、"Writing MAC:%%j"、"Write MAC (%%j)" >>%%i.txt
)
第3个回答  2008-11-12
以实际文件的形式1234.csv,8A18517507.txt,发给我看一下,做成功再给你发消息。yymhy@163.com

dos(批处理)或VBS脚本批量重命名及修改批量修改文件内容
1234.csv(Excel保存的逗号分隔符文件)用记事本打开内容是:8A18517507,002185EE0E39 8A12345678,001d92123456 8A12345679,001d92123457 运行结果:文件:8A12345678.txt 内容:S\/N:8A12345678 Writing MAC 001d92123456 Write MAC (001d92123456)文件:8A12345679.txt 内容:S\/N:8A12345679 Writing MAC 001d...

dos(批处理)或VBS脚本批量修改CSV格式文件内容
set fso=createobject("scripting.filesystemobject")set fols=fso.getfolder("C:\\P")for each fol in fols.subfoldersfolPath = fol.pathfolName = fol.nameFile1 = folPath & "\\" & folName & "T.CSV"set f = fso.opentextfile(File1)text = f.readallf.close fso.deletefile File1arrT ...

dos(批处理)或VBS脚本批量修改CSV格式文件内容
1.备份源文件 2.此为powershell脚本,保存为ps1扩展名文件,右键单击脚本,以powershell运行 3.未对powershell进行过设置的,可以管理员身份运行CMD,复制以下命令到命令提符 以解除脚本限制 powershell -c "set-executionpolicy unrestricted"当然也可以管理员运行POWERSHELL,输入以下命令解除脚本限制 set-ex...

求BAT或者VBS脚本,批量重命名一个文件夹下面的文件为0001 、0002、0003...
而且ls的cd在别的盘符不管用(如果批处理在c:盘,而目标文件夹在d:盘则cd不过去)

VBS批量更名问题
msgbox "总共修改了" & k & "个txt文件" & vbcrlf & vbcrlf & "(不记重名但记重复修改)"再次修改。。。For l=1 To 5 myfile.ReadLine Next 以上FOR循环表示跳过前5行。例如要读第6行,就要跳过前5行,代码为 For l=1 To 5 myfile.ReadLine Next 要读第n行,就要跳过前n-1行,代码...

用批处理批量修改文件名
方法:在当前目录下新建两个批处理文件:createsrc.bat和rename.bat。createsrc.bat文件内容如下:dir \/a-d \/b *.jpg>src.txt echo 收集文件名成功!pause 功能:将当前目录下的所有扩展名为.jpg的文件的文件名都导入到src.txt文件中 rename.bat文件内容如下:for \/f %%s in (src.txt) do (...

用批处理批量重命名文件(全是电影的文件名)
把下面的代码保存成vbs, 自己看着修改一下, 然后运行之(例如电影在"c:\\电影\\"里面):set fso = createobject("scripting.filesystemobject")set a = fso.getfolder("c:\\电影\\")set b = a.files for each c in b d = replace(c.name,"高清","移动高清")fso.movefile "c:\\电影\\"+c.name...

文件重命名 批处理
保存代码为批处理文件(.bat)文件,放到要改名的文件夹内运行:--- echo off for \/f "delims=" %%A in ('dir \/a-d\/b 鹿鼎记*.rmvb') do (for \/f "tokens=1,2 delims=-" %%i in ('echo %%~nA') do (ren "%%A" "鹿鼎记%%j.rmvb"))pause --- 解释:echo off for \/...

帮忙写个批处理 取到变量后批量修改文件名
echo offfor \/f "tokens=1,2* delims=:: " %%a in ('findstr\/b "地址" a0*')do ( echo %%a ren %%a "%%c%%~xa")pause注:处理当前目录以A0开头的文件名

bat——vbs——批处理——编程语言——批量重命名(把后缀名为.chn.srt...
echo off&setlocal enabledelayedexpansionfor \/r d:\\123 %%i in (*) do ( set "var=%%~nxi" set "var=!var:.chn=!" ren "%%i" "!var!")

相似回答