
CODE: [Copy to clipboard]@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in (a.txt) do (
set x=%%i
set /a n+=1
call set x=%%x:??=!n!%%
echo !x!
)
pause
CODE: [Copy to clipboard]直接运行,则替换 a.txt;将文本拖到批处理图标上,则替换拖入的文本。@echo off
set n=
if "%~1" neq "" (
set f=%1
) else set f="a.txt"
echo 替换 %f% 中的“??”为 1~n?
pause
(
for /f "usebackq delims=" %%a in (%f%) do (
set var=%%a
set /a n += 1
SetLocal EnableDelayedExpansion
for %%a in (!n!) do echo;!var:??=%%a!
EndLocal
)
)>tmp.n
move tmp.n %f%
| 欢迎光临 中国DOS联盟论坛 (http://cndos.fam.cx/forum/) | Powered by Discuz! 2.5 |