找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 9966|回复: 7

[文本处理] 【已解决】多个同样后缀格式的文本文件批量替换内容关键词

[复制链接]
发表于 2024-12-25 14:40:59 | 显示全部楼层 |阅读模式
本帖最后由 jave000 于 2024-12-25 15:09 编辑

现有多个文本文件,有着同样的后缀格式,比如txt,用记事本打开是正常的文本内容。
现在需要批量把每个文本内容中第一行包含的config改为gen
请问批处理能实现吗?
谢谢
发表于 2024-12-25 14:49:45 | 显示全部楼层
回复 1# jave000

如果不介意使用第3方工具,则sed( http://bcn.bathome.net/tool/4.9/sed.exe )的实现方式如下:

  1. sed -i "1s/config/gen/" *.txt
复制代码

评分

参与人数 1技术 +1 收起 理由
jave000 + 1 非常好用

查看全部评分

 楼主| 发表于 2024-12-25 15:00:39 | 显示全部楼层
回复 2# hfxiang


    感谢,已解决,就是因为已经有引号了,如果替换内容也需要引号,那么哪个用单引号?
发表于 2024-12-25 15:06:04 | 显示全部楼层
回复 3# jave000
请提供实例以便测试
 楼主| 发表于 2024-12-25 15:09:09 | 显示全部楼层
回复 4# hfxiang


  就是比如带空格的文本
  1. sed -i "1s/"something config"/"anything gen"/" *.txt
复制代码
发表于 2024-12-25 15:12:01 | 显示全部楼层
回复 5# jave000

  1. sed -i "1s/something config/anything gen/" *.txt
复制代码

评分

参与人数 1技术 +1 收起 理由
jave000 + 1 很好的

查看全部评分

 楼主| 发表于 2024-12-25 15:15:33 | 显示全部楼层
回复 6# hfxiang


    谢了,我学习一下sed资料
发表于 2024-12-25 15:54:03 | 显示全部楼层
本帖最后由 aloha20200628 于 2024-12-25 16:10 编辑

回复 1# jave000

给一个批处版本》将当前目录下的每个 *.txt 文件中的首行(假定首行不能是空行)作关键词替换并覆写源文件...

  1. @echo off &setlocal enabledelayedexpansion
  2. for /f "delims=" %%F in ('dir /b/a-d *.txt') do (
  3.   set/p "a="<"%%F" &set "a=!a:config=gen!"
  4.   more +1 "%%F">"_.2" &echo,!a!>"_.1" &copy /y _.1+_.2 "%%F")>nul
  5. del /q _.1 _.2 &pause&exit/b
复制代码

评分

参与人数 1技术 +1 收起 理由
jave000 + 1 感谢帮助

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 11:44 , Processed in 0.021725 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表