bat批处理修改文件内容

发布网友 发布时间:2022-04-22 07:34

我来回答

2个回答

热心网友 时间:2022-06-17 19:51

批处理是一种简化的脚本语言,也称作宏。它应用于DOS和Windows系统中,它是由DOS或者Windows系统内嵌的命令解释器(通常是COMMAND. COM或者CMD.EXE)解释运行。类似于Unix中的Shell脚本。批处理文件具有.bat或者.cmd的扩展名,其最简单的例子,是逐行书写在命令行中会用到的各种命令。更复杂的情况,需要使用if,for,goto等命令控制程序的运行过程,如同C,Basic等中高级语言一样。如果需要实现更复杂的应用,利用外部程序是必要的,这包括系统本身提供的外部命令和第三方提供的工具或者软件。批处理文件,或称为批处理程序,是由一条条的DOS命令组成的普通文本文件,可以用记事本直接编辑或用DOS命令创建,也可以用DOS下的文本编辑器Edit.exe来编辑。在“命令提示”下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe运行该批处理程序。一般情况下,每条命令占据一行;当然也可以将多条命令用特定符号(如:&;、&&;、|、||等)分隔后写入同一行中;还有的情况就是像if、for等较高级的命令则要占据几行、几十甚至几百行的空间。系统在解释运行批处理程序时,首先扫描整个批处理程序,然后从第一行代码开始向下逐句执行所有的命令,直至程序结尾或遇见exit命令或出错意外退出。

热心网友 时间:2022-06-17 19:51

不清楚你的实际文件/情况,仅以问题中的样例/说明为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件放一起运行
@echo off
rem 将一个指定txt文本文件内的某一指定特征行的部分内容替换/修改成其他内容
mode con lines=3000
set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%@% %z%
cd /d "%~dp0"
set "file=eee.txt"
set "key=aaaa"
set "value=xxxxxx"
(for /f "tokens=1* delims=:" %%a in ('findstr /n .* "%file%"') do (
set "line=%%b"
if defined line (
setlocal enabledelayedexpansion
for /f "delims==" %%c in ("!line!") do (
if "%%c" equ "%key%" (
echo;%key%=%value%
) else echo;!line!
)
endlocal
) else echo;
))>"t.t"
move /y "t.t" "%file%"
echo;%#% +%$%%$%/%@% %z%
pause
exit追问如果把aaaa替换为["aaaa"],要怎样替换呢
["aaaa"] = 123123
bbb=333
ccc=666

追答按运行代码后窗口标题栏中的提示联系我

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com