【发布时间】:2019-03-20 20:23:47
【问题描述】:
我有一个看起来像这样的文本文件
file:/path/to/file
..
..
DA:34,0,0
DA:86,0,0
DA:87,0,0
..
DA:89,0,0
file:/path/to/file
..
DA:23,0,1
..
DA:24,0,1
DA:25,0,1
..
我只想在以“file”开头的行之后保留以“DA”开头的第一行。必须删除以“DA”开头的其他行。还有很多其他的行(我用“..”标记了它们),它们也需要保留。
结果应该是这样的:
file:/path/to/file
..
..
DA:34,0,0
..
file:/path/to/file
..
DA:23,0,1
..
..
有人可以帮助我吗?我将不胜感激。谢谢
【问题讨论】:
-
你搜索了什么,你发现了什么,为什么没有用?
-
欢迎来到 Stack Overflow!抱歉,这不是 StackOverflow 的工作方式。 “我想做 X,请给我提示和/或示例代码”形式的问题被认为是题外话。请访问help center并阅读How to Ask,尤其是阅读Why is “Can someone help me?” not an actual question?
-
@tripleee 不是真正的重复!不同的是需要打印一些行。
-
由于缺乏尝试而重新关闭它似乎是毫无意义的。如果 OP 仍然需要进一步的帮助,他们可能应该尽最大努力发布一个新的和改进的问题。
-
我使用了这个命令,但我不能这样做来检查以 "file" awk '!c && /^DA/{c=1;print 开头的行后的下一个 "DA" 行;next} !/^DA/ {print} END{print l}' $i.info > temp.info && mv temp.info $i.info