如何用bat文件查找并修改文本的内容?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用bat文件查找并修改文本的内容?相关的知识,希望对你有一定的参考价值。

我想修改
%cd%\文件夹\a.txt
里面的x.x.x为a.b.c
如何写bat文件?

普通替换,搜一下多省事...  写个保持原文本空行的

@echo off
set "fp=%cd%\\文件夹"
set "fn=a.txt"
set "ss=x.x.x"
set "sd=a.b.c"
set/p=处理中. . . <nul
cd/d "%fp%"
(for /f "tokens=1* delims=:" %%i in ('type "%fn%"^|findstr/n ".*"')do (
   set "s=%%j"
   title .     %%i
   setlocal enabledelayedexpansion
   if defined s set "s=!s:%ss%=%sd%!"
   echo.!s!
   endlocal
))>"%temp%\\%fn%"
move "%temp%\\%fn%" .
echo  ok
pause

参考技术A @echo off
setlocal enabledelayedexpansion
(for /f "delims=" %%a in ('type %cd%\\文件夹\\a.txt') do (
set str=%%a
set str=!str:x.x.x=a.b.c!
echo !str!
)
)>%cd%\\文件夹\\new_a.txt
echo end...
pause

参考技术B BBdoc文档搜索工具支持word Excel pdf txt csv等各类文档内容快速搜索。

如何用bat遍历文件,并找到文件名包含某字符的文件吗?

这是我写的,但是好像一直无法正常运行,不知道是哪里错了
@echo off
set a=1
set ”b=-46-1”
for %%i in (*) do (
“%a%=%%i”
echo %a%| findstr %b% >nul && (
echo %a%含%b%
) || (
echo %a%不包含%b%
)
)

pause

参考技术A 不清楚你的实际文件/情况,仅以问题中的说明及猜测为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件或文件夹放一起双击运行@echo off&cd /d "%~dp0"
rem 搜索/查找文件名称中存在/包含指定字符的文件
set #=Any question&set _=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%_% %z%
set "findword=-46-1"
for /f "delims=" %%a in ('dir /a-d-h/b/s "*%findword%*"') do echo;%%a
echo;%#% +%$%%$%/%_% %z%
pause
exit

本回答被提问者采纳

以上是关于如何用bat文件查找并修改文本的内容?的主要内容,如果未能解决你的问题,请参考以下文章

如何用批处理替换文本内容?

如何用bat批量去掉文件名的后缀

BAT自动批处理写一个脚本查找指定软件安装目录并启动软件

求助如何用bat整理文件内容,并输出结果?

如何用bat遍历文件,并找到文件名包含某字符的文件吗?

Bat如何替换文件内容?