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

[文本处理] 请问批处理批量改文件内容,怎样速度快?

[复制链接]
发表于 2024-3-6 07:54:24 | 显示全部楼层 |阅读模式
比如有很多个txt,每行里的aaa需要替换成bbb
请问,用sed或gawk替换,速度上算快还是慢
用bat、pwsh或其他方式写这种批量替换,是否有速度更快的方式,多谢
 楼主| 发表于 2024-3-6 08:02:11 | 显示全部楼层
本帖最后由 wanghan519 于 2024-3-6 08:03 编辑

第一反应写的是sed,但用的是busybox.exe所以有点慢
  1. sed -i 's/aaa/bbb/' *.txt
复制代码
之后用powershell读取后逐行处理,很慢
但改为整个文件读入,一次替换后,速度还不错
就想知道,对于这种规则很简单的替换,是否能写更快的替换
发表于 2024-3-6 08:29:57 | 显示全部楼层
回复 1# wanghan519


    请找5到10个测试文件,打包上传到网盘,我试试。
 楼主| 发表于 2024-3-6 10:31:49 | 显示全部楼层
本帖最后由 wanghan519 于 2024-3-6 10:55 编辑

回复 3# Batcher


    感谢大佬的关注

我整理了目前的尝试,代码都在bat文件里,其中第一句是从论坛上抄来的
目的是删除所有时间结尾处的毫秒数

pwsh是用foreach读取每个文件,用replace替换再写回去
要不就是用第三方exe,busybox.exe和sd.exe都是从github下载的
实在写不来纯bat,也不知道有没有算法,目前第三方工具sd最快。。。

附件 http://wils.3vhost.club/test.zip
https://pan.baidu.com/s/1n1Rhy1YgW1AWimuxwaVxfw?pwd=4sq4
4sq4
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-18 05:34 , Processed in 0.016871 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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