麻烦帮忙做个BAT,需要批量把文件夹下DAT文件里的部分数字字母和空格删除,格式也要变,文件名字不变。

变前:
SS J5-2,0.000,
HD 277.08440,107.6200,0.7660
SS J5-1,0.000,
HD 284.18250,110.0000,0.6480
SS J5-4,0.000,
HD 284.55460,48.6910,0.0550
BS J5-5,0.000,
HV 288.45040,49.2760,0.1270
SS J5-3,0.000,
HD 299.20550,53.7500,0.0990
BS J35,0.000,
HV 279.20540,27.0060,-1.6270
SS J32,0.000,
HD 25.51400,128.9760,-0.7210
SS J30,0.000,
HD 22.59300,156.4230,-0.9240

变后:
J5-2,277.08440,107.6200,0.7660
J5-1,284.18250,110.0000,0.6480
J5-4,284.55460,48.6910,0.0550
J5-5,288.45040,49.2760,0.1270
J5-3,299.20550,53.7500,0.0990
J35,279.20540,27.0060,-1.6270
J32,25.51400,128.9760,-0.7210
J30,22.59300,156.4230,-0.9240

如果能有简单的注释最好,因为可能还有另外的字母或者格式要变。谢谢。没多少钱,不好意思。

第1个回答  2011-03-23
此类问题还是用 sed 或 awk 比较合适,先到 h+t+t+p+:+/+/+w+w+w.pement.o+r+g/+s+e+d/ (将+替换成空) 下载 sed :然后执行如下代码:

@echo off
for /f "delims=" %%i in ('dir /s/b *.DAT') do (
sed -i "/SS\|BS/{N; s/[A-Z]\+ \+//; s/-[^-] \+/-/; s/,[^ ]\+ \+/,/}" "%%i" && del sed*
)
exit

使用前备份文件。
第2个回答  2011-03-23
建一个批处理
新建一个 记事本文件 用rename 命令 你可以多复制几个 比如 我的文件夹里有一堆文件 001.txt 002.txt 003.txt......
我想把这三个文件分别 改成 011.txt 022.txt 033.txt......
就可以这样
rename 001.txt 011.txt
rename 002.txt 022.txt
rename 003.txt 033.txt
......
然后另存为 改名.bat (将扩展名改为 .bat)
就可以了这个是个最简单的办法本回答被网友采纳
相似回答