[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
看到百度上一个修改指定行的批处理,转过来看看
使用Dos命令修改文本文件指定行的内容rem 使用示例1:调用子程序replaceLine修改a.txt文件中第3行的内容为“我就百不度”

call :replaceLine C:\a.txt 3 我就百不度

rem 使用示例2:调用子程序replaceText替换a.txt文件中所有“百度”为“我就百不度”

call :replaceText C:\a.txt 百度 我就百不度




rem 子程序:替换文本文件中指定行的内容

:replaceLine

rem 需要操作的文件

set file=%1

rem 需要修改的行数

set lineNum=%2

rem 指定行替换的内容

set lineTxt=%3

@echo off

setlocal enabledelayedexpansion

for /f "delims=" %%a in ('type %file%') do (

    set /a n+=1

    if !n! equ %lineNum% (

        echo %lineTxt% >> %file%~tmp

    ) else (

        echo %%a >> %file%~tmp

    )

)

del /q %file%

move %file%~tmp %file%

goto :eof



rem 子程序:替换文本文件中的指定字符串

:replaceText

rem 需要操作的文件

set file=%1

rem 需要替换的字符串

set findStr=%2

rem 替换的目标字符串

set replaceStr=%3

@echo off

setlocal enabledelayedexpansion

for /f "delims=" %%i in ('type %file%') do (

    set str=%%i

    set str=!str:%findStr%=%replaceStr%!

    echo !str! >> %file%~tmp

)

del /q %file%

move %file%~tmp %file%

goto :eof



:eof




注:转载请保留此说明和链接,原文 http://hi.baidu.com/wojiubaibudu ... 8ae32393457e48.html

TOP

返回列表