输入
# FILE:app/src/file1.c, something_over_here
something_over_here
# FILE:app/src/file1.c, something_over_here
something_over_here
# FILE:app/src/file2.c, something_over_here
something_over_here
# FILE:app/src/file2.c, something_over_here
something_over_here
...........
输出
# FILE:app/src/file1.c, something_over_here
something_over_here
# FILE:app/src/file2.c, something_over_here
something_over_here
..........
我有一个输入文件,其中包含重复出现的具有相同文件名的行。我需要删除除每个文件名的第一次出现之外的所有内容。我该怎么办?我对脚本(python / shell)不太熟悉。我需要知道继续前进的方向。
答案 0 :(得分:0)
对你真正想要的东西做出许多假设,试试:
awk '/^#/ {p=H[$2]++} !p ' input > output
这只是扫描文件并在看到以“#”开头的行时递增计数器。为每个文件名保留计数器(以注释开头的行中的第2列),如果之前看到过最近看到的文件的计数器,则不会打印一行。