批处理 保留空行替换字符串
更新时间:2009年05月11日 12:13:27 作者:
保留空行替换字符串 当行首有冒号时会抛掉最开始的几个连续冒号(这个问题可以解决)
复制代码 代码如下:
@echo off
:: 保留空行替换字符串
:: 当行首有冒号时会抛掉最开始的几个连续冒号(这个问题可以解决)
:: 会忽略以分号开头的行
:: 不能正确处理感叹号(因为启用了变量延迟)
::
::
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= 请输入替换字符串:
cd.>"%file%_tmp.txt"
setlocal enabledelayedexpansion
for /f "tokens=1* delims=:" %%i in ('findstr /n .* "%file%"') do (
set str=%%j
if not "!str!"=="" set "str=!str:%replaced%=%all%!"
>>"%file%_tmp.txt" echo.!str!
)
copy "%file%" "%file%_bak.txt" >nul 2>nul
move "%file%_tmp.txt" "%file%"
start "" "%file%"
相关文章
在WINDOWS下dos与批处理中的命令cd /d %~dp0及其用途
这篇文章主要介绍了在WINDOWS下dos与批处理中的命令cd /d %~dp0及其用途,需要的朋友可以参考下2023-05-05批处理代码搞定Windows下Nginx+PHP(FastCGI)管理
今天在家没事,自己用批处理写了个Windows下的Nginx+PHP管理程序。2010-03-03使用批处理for命令清除事件查看器所有Windows EventLog日志
以前装完系统后要做个Ghost,为了达到完美,每次做Ghost前都会手动清除 事件查看器所有Windows EventLog日志2013-05-05
最新评论