Unix - 从文件中删除重复项 headers
Unix - removing duplicate headers from file
我有一个文件 (result.txt) 几乎没有重复的 header 行,我只想保留一个 header 行并删除所有其他重复项(参考所需的输出)。我尝试使用 sort -u、uniq、sed 和所有其他选项,但无法获得所需的输出。有人可以帮我解决这个问题吗?
cat result.txt
Metric date_sk date_sk -7
---------------- ---------- ----------
Test1 2015-10-19 2015-10-12
Metric date_sk date_sk -7
---------------- ---------- ----------
Test2 2015-10-19 2015-10-12
Metric date_sk date_sk -7
---------------- ---------- ----------
Test3 2015-10-19 2015-10-12
Desired output:
Metric date_sk date_sk -7
---------------- ---------- ----------
Test1 2015-10-19 2015-10-12
Test2 2015-10-19 2015-10-12
Test3 2015-10-19 2015-10-12
谢谢
用 GNU sed 试试这个:
sed '3,${/^Metric/d;/^---/d}' file
输出:
Metric date_sk date_sk -7
---------------- ---------- ----------
Test1 2015-10-19 2015-10-12
Test2 2015-10-19 2015-10-12
Test3 2015-10-19 2015-10-12
如果你想编辑 "in place" 添加 sed 的选项 -i
。
我有一个文件 (result.txt) 几乎没有重复的 header 行,我只想保留一个 header 行并删除所有其他重复项(参考所需的输出)。我尝试使用 sort -u、uniq、sed 和所有其他选项,但无法获得所需的输出。有人可以帮我解决这个问题吗?
cat result.txt
Metric date_sk date_sk -7
---------------- ---------- ----------
Test1 2015-10-19 2015-10-12
Metric date_sk date_sk -7
---------------- ---------- ----------
Test2 2015-10-19 2015-10-12
Metric date_sk date_sk -7
---------------- ---------- ----------
Test3 2015-10-19 2015-10-12
Desired output:
Metric date_sk date_sk -7
---------------- ---------- ----------
Test1 2015-10-19 2015-10-12
Test2 2015-10-19 2015-10-12
Test3 2015-10-19 2015-10-12
谢谢
用 GNU sed 试试这个:
sed '3,${/^Metric/d;/^---/d}' file
输出:
Metric date_sk date_sk -7 ---------------- ---------- ---------- Test1 2015-10-19 2015-10-12 Test2 2015-10-19 2015-10-12 Test3 2015-10-19 2015-10-12
如果你想编辑 "in place" 添加 sed 的选项 -i
。