能否提供一个BAT批处理,修改一个文件夹内的所有TXT文件的文件名,文件名不统一,并修改TXT文档第一行文字

能否提供一个BAT批处理,修改一个文件夹内的所有TXT文件的文件名,文件名不统一,并修改TXT文档第一行文字,例如:文件夹内有三个TXT文件:111.TXT222.TXT... 能否提供一个BAT批处理,修改一个文件夹内的所有TXT文件的文件名,文件名不统一,并修改TXT文档第一行文字,例如:
文件夹内有三个TXT文件:111.TXT 222.TXT 333.TXT
对应111文件内第一行文字为“要处理文件 111”......222和333文件与111文件对应
将文件名111改为一一一、222改为二二二、三三三改为三三三
将111文件第一行文字改为“要处理文件 一一一”.......222和333相对应。
感谢各位大侠,帮帮忙。
展开
 我来答
hnsz2k
2012-08-10 · TA获得超过1582个赞
知道大有可为答主
回答量:1360
采纳率:100%
帮助的人:1482万
展开全部
@echo off&setlocal EnableDelayedExpansion
for /f "tokens=*" %%a in ('dir /b *.txt') do (set "n=%%~na"
call :num2hz "!n!" hzf
set h=0
for /f "tokens=*" %%t in (%%a) do (set "m=%%t"
set /a h+=1
if !h! EQU 1 (call :num2hz "!m!" hzt
set hzt=!hzt:^"=!
echo !hzt!>!hzf!.txt) else (echo %%t>>!hzf!.txt)
::如果校验没问题,请把下面一行的 echo 删掉再运行(以便删除源文件)
echo del /f /q %%a)
goto :EOF

:num2hz %1 %2
set x=%1
set x=%x:1=一%
set x=%x:2=二%
set x=%x:3=三%
set x=%x:4=四%
set x=%x:5=五%
set x=%x:6=六%
set x=%x:7=七%
set x=%x:8=八%
set x=%x:9=九%
set x=%x:0=零%
set %2=%x%
goto :EOF
sudoku52
2012-08-10 · TA获得超过7万个赞
知道大有可为答主
回答量:1.2万
采纳率:82%
帮助的人:5101万
展开全部
不知道1楼hnsz2k的bat会不会把txt里面所有的1都替换成一???,还是仅能保存最后一行

@echo off
setlocal EnableDelayedExpansion
for /f "tokens=*" %%i in ('dir/b *.txt') do (
set f=%%~ni
set f=%f:1=一%
set f=%f:2=二%
set f=%f:3=三%
set f=%f:4=四%
set f=%f:5=五%
set f=%f:6=六%
set f=%f:7=七%
set f=%f:8=八%
set f=%f:9=九%
set f=%f:0=零%
echo 要处理文件 !f!>!f!.txt
more +1 "%%i">>!f!.txt
del "%%i")
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式