Board logo

标题: [文本处理] 求助:100个txt,删除特定行,并且分别保存成同名的txt。 [打印本页]

作者: xxm19810711    时间: 2014-11-28 18:22     标题: 求助:100个txt,删除特定行,并且分别保存成同名的txt。

各位大侠好,自己捣鼓了好久,还是半成品,麻烦各位能人帮忙看看。

问题陈述:在同一个文件夹下有100个txt文档,我现在想把每个文档中包含特征字符的那行删除,然后这100个txt,分别保存成同名的文件(和手动在原txt上修改的效果一样)或者保存成名字相似的文件。
举例:3个附件txt中,我要删除包含SCRIPT  IMG  CNZZ 这3个字符所在的行,但是我不知道怎么保存成同名的,所以只能都生成到一个文本3.txt里,而且3.txt里,每行开头还包括原文件的文件名,我想要删掉。
  1. @echo
  2. findstr /v /r /I "SCRIPT IMG CNZZ" *.txt>3.txt
  3. pause
复制代码

作者: CrLf    时间: 2014-11-28 19:38

本帖最后由 CrLf 于 2014-11-30 14:03 编辑

去下一个 sed 吧
  1. sed -r -i "/SCRIPT|IMG|CNZZ/d" *.txt
复制代码

作者: xxm19810711    时间: 2014-11-30 09:30

回复 2# CrLf


    sed 是什么呀?我是菜鸟,都不懂,可以说详细点吗?谢谢了!!!
作者: xxm19810711    时间: 2014-11-30 10:49

回复 2# CrLf


  把你写的这行代码放到txt里,在改成bat,运行就可以了吗?
作者: xxm19810711    时间: 2014-11-30 11:08

回复 2# CrLf


    我在咱们论坛上下载了一个sed4.2.2,解压后放到了system32 下面,然后在cmd里输入你说的这行命令,但是没有效果,可以帮忙看一下吗
作者: xxm19810711    时间: 2014-11-30 11:26

回复 2# CrLf


   我知道怎么弄了,但是这3个字符对应的行不能同时删除,我只能一个一个的删除,是不是中间的竖线|有问题?
作者: CrLf    时间: 2014-11-30 14:03

回复 6# xxm19810711


    哦,忘了加 -r,2 楼代码已修改~




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2