求批量更改文件内指定内容的软件或方法?

2014-06-23 07:40:29 +08:00
 realgreenzb
手上有一堆html文件,大概一千多个。需要把里面所有 “XX公司” 的字样更改为 “XX有限责任公司”。。。不想一个个去处理,求好用的方法或软件。谢谢!
5423 次点击
所在节点    问与答
43 条回复
crab
2014-06-23 07:43:15 +08:00
Windows的话搜索:文本批量替换工具
realgreenzb
2014-06-23 07:49:04 +08:00
@crab 试试,谢啦
anheiyouxia
2014-06-23 07:56:08 +08:00
Emeditor,但是只有付费版才有,免费版没有,提供30天使用,notepad也有
smblog
2014-06-23 08:05:03 +08:00
SUBLIME TEXT 就可以。。FIND IN FILES
realgreenzb
2014-06-23 08:28:19 +08:00
@smblog
@anheiyouxia

编辑器的确是最直观的,但一下子打开一千多个文件,电脑直接就死了。
他们可以一次打开十个文件,关闭,然后继续十个十个的替换么?我没找到方法。。。
smblog
2014-06-23 08:32:38 +08:00
@realgreenzb sublime不需要打开文件啊。。
realgreenzb
2014-06-23 08:47:39 +08:00
@smblog

FIND IN FILES已测。。sublime直接死了,他还是会打开文件去显示更改结果的。。不能直接几十个或者上千的做文件替换。。
andrewpsy
2014-06-23 08:51:15 +08:00
可以自己写个小程序搞一个BFS(方程大概就叫 ReplaceText(string rootDirectory)吧)每个文件打开替换,不过度工程化的话一百行不到的代码就够了。
pheyx
2014-06-23 08:52:08 +08:00
cygwin sed
realgreenzb
2014-06-23 08:53:00 +08:00
@andrewpsy 实在没现成的就只有用python撸一把了。。只是觉得这种事情应该有软件可以做,所以想问问大家
d0o0g
2014-06-23 08:55:06 +08:00
vim :%s/XX公司/XX有限责任公司/g
d0o0g
2014-06-23 08:55:45 +08:00
额,我看错了,以为单个文件
raincious
2014-06-23 08:57:56 +08:00
@realgreenzb Notepad++,Crt+F => Find in files => Replace in files
Mutoo
2014-06-23 08:58:07 +08:00
notepad++ 可以
jianghu52
2014-06-23 09:00:26 +08:00
小众软件推荐过一个 http://www.appinn.com/batch-text-replace/。你可以去看看。
另外我记得tc好像也有这个功能
realgreenzb
2014-06-23 09:01:42 +08:00
@raincious
@Mutoo

貌似用编辑器去做批量替换都会遇到文件量太大,编辑器直接就死掉的问题。而且我还专门把文件全放在ramdisk里,加快读取。16g内存也扛不住。。。估计只能写脚本了。。
d0o0g
2014-06-23 09:01:53 +08:00
find ./ -name "*.html" -print0 | xargs -0 sed -i 's/XX公司/XX有限责任公司/g'
realgreenzb
2014-06-23 09:03:03 +08:00
@jianghu52 链接失效,不过感觉有戏。谢过,试试
ibolee
2014-06-23 09:16:05 +08:00
lz

1.看到我打开了多少js文件吗?
2.看到替换下面的选项是:『替换所有打开的文件』了吗?
我用的软件是ultra edit,有试用,兼容windows、mac、linux。



v2ex精神,做好事有图。。。
anheiyouxia
2014-06-23 09:17:00 +08:00
@realgreenzb 顶部菜单点击编辑,有个在文件中替换的选项,可以批量替换,你一个个打开替换,让我震惊了
BTW,支持正则表达式

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/118991

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX