求批量给文本内容中标题前添加序号的批处理
我想在几百各文本中的标题前添加序号,序号和原来的标题在同一行,哪位高手能帮我写一下这方面的批处理?我这里有两个相关的批处理,一个能批量添加文件名序号到文本中,但序号和标题...
我想在几百各文本中的标题前添加序号,序号和原来的标题在同
一行,哪位高手能帮我写一下这方面的批处理?我这里有两个相
关的批处理,一个能批量添加文件名序号到文本中,但序号和标
题不在同一行,序号在第一行,标题在第二行;还有个批处理可添
加序号到标题前,和标题是同一行,但只能处理一个文本后就退
出了.我把这两个批处理的代码帖上来,帮我修改一下也行,或者
提供一个批量合并文本中第一行和第二行的批处理也可,期待!
非常感谢!
代码1:(可添加序号,但和标题不在同一行),"(@echo off
set/a n=1000
for %%a in (*.txt) do (
for /f "delims=" %%b in ('findstr/n ".*" "%%~a"')
do (
set "str=%%b"&setlocal enabledelayedexpansion
set "str=!str:*:=!"
if not defined flag (>%%a echo %%~na&>>%%a
echo/!str!) else (>>%%a echo/!str!)
endlocal&set flag=a
)
set "flag="&call :_ren "%%a"
)
pause&exit
::重命名
:_ren
set/a n+=1
if not exist %n:~1%.txt (ren %1 "%n:~1%.txt") else goto
_ren)"
代码2:(可添加序号在标题前且在同一行,处理后的文件只有
扩展名,处理完一个后就退出了),"(@echo off
for /f "tokens=1*" %%a in ('dir /a-d /b *.txt') do (
(set /p=%%a<nul
type "%%a %%b"
)>"%%b.txt"
)
del /f /q "* *.txt")" 展开
一行,哪位高手能帮我写一下这方面的批处理?我这里有两个相
关的批处理,一个能批量添加文件名序号到文本中,但序号和标
题不在同一行,序号在第一行,标题在第二行;还有个批处理可添
加序号到标题前,和标题是同一行,但只能处理一个文本后就退
出了.我把这两个批处理的代码帖上来,帮我修改一下也行,或者
提供一个批量合并文本中第一行和第二行的批处理也可,期待!
非常感谢!
代码1:(可添加序号,但和标题不在同一行),"(@echo off
set/a n=1000
for %%a in (*.txt) do (
for /f "delims=" %%b in ('findstr/n ".*" "%%~a"')
do (
set "str=%%b"&setlocal enabledelayedexpansion
set "str=!str:*:=!"
if not defined flag (>%%a echo %%~na&>>%%a
echo/!str!) else (>>%%a echo/!str!)
endlocal&set flag=a
)
set "flag="&call :_ren "%%a"
)
pause&exit
::重命名
:_ren
set/a n+=1
if not exist %n:~1%.txt (ren %1 "%n:~1%.txt") else goto
_ren)"
代码2:(可添加序号在标题前且在同一行,处理后的文件只有
扩展名,处理完一个后就退出了),"(@echo off
for /f "tokens=1*" %%a in ('dir /a-d /b *.txt') do (
(set /p=%%a<nul
type "%%a %%b"
)>"%%b.txt"
)
del /f /q "* *.txt")" 展开
1个回答
展开全部
@echo off & setlocal enabledelayedexpansion
md 修改后
set a=1
for /f "delims=" %%i in ('dir /a-d/b *.TXT') do (
set file=%%~nxi
set file1=%%i
call:RR
)
exit
:RR
if !a! lss 1000 (
if !a! lss 100 (
if !a! lss 10 (
set R1=000!a!
) else set R1=00!a!
) else set R1=0!a!
) else set R1=!a!
for /f "delims=" %%b in ('more "%file1%"') do (
echo %R1%、%%b>"修改后\%file%"
goto:QQ
)
:QQ
more +1 "%file1%">>"修改后\%file%"
set/a a+=1
goto:eof
md 修改后
set a=1
for /f "delims=" %%i in ('dir /a-d/b *.TXT') do (
set file=%%~nxi
set file1=%%i
call:RR
)
exit
:RR
if !a! lss 1000 (
if !a! lss 100 (
if !a! lss 10 (
set R1=000!a!
) else set R1=00!a!
) else set R1=0!a!
) else set R1=!a!
for /f "delims=" %%b in ('more "%file1%"') do (
echo %R1%、%%b>"修改后\%file%"
goto:QQ
)
more +1 "%file1%">>"修改后\%file%"
set/a a+=1
goto:eof
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询