曲径通幽论坛
标题:
用指定字符替换指定内容
[打印本页]
作者:
easy
时间:
2014-6-4 19:18
标题:
用指定字符替换指定内容
下面代码将接受用户的输入(被替换的字符串与替换后的字符串),并检索全文,逐行替换,代码如下:
@echo off
setlocal enabledelayedexpansion
set file=
set /p file= 请输入要操作的文件名称(包括扩展名):
set "file=%file:"=%"
for %%i in ("%file%") do set file=%%~fi
echo.
set replaced=
set /p replaced= 请输入即将被替换的内容:
echo.
set all=
set /p all= 请输入替换字符串:
for /f "delims=" %%i in ('type "%file%"') do (
set str=%%i
set "str=!str:%replaced%=%all%!"
echo !str!>>"%file%"_tmp.txt
)
copy "%file%" "%file%"_bak.txt >nul 2>nul
move "%file%"_tmp.txt "%file%"
start "" "%file%"
复制代码
该代码主要利用了 set 命令的替换字串形式: %PATH:str1=str2% ,即将 str2 替换掉 str1 。
欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/)
Powered by Discuz! X3.2