如何从文件中删除多个标头?我从如何在Unix中删除文件中的重复行后,尝试使用以下代码?.
awk '!x[$0]++' file.txt
它正在删除文件中的所有重复记录.但在我的情况下,我只需要删除标题重复项,而不是文件中的重复记录.例如,我有一个包含以下数据的文件:
column1, column2, column3, column4, column5 value11, value12, value13, value14, value14 value21, value22, value23, value24, value25 value31, value32, value33, value34, value35 value41, value42, value43, value44, value45 value51, value52, value53, value54, value55 value21, value22, value23, value24, value25 column1, column2, column3, column4, column5 value11, value12, value13, value14, value14 value21, value22, value23, value24, value25 column1, column2, column3, column4, column5 column1, column2, column3, column4, column5
我期待输出如下:
column1, column2, column3, column4, column5 value11, value12, value13, value14, value14 value21, value22, value23, value24, value25 value31, value32, value33, value34, value35 value41, value42, value43, value44, value45 value51, value52, value53, value54, value55 value21, value22, value23, value24, value25 value11, value12, value13, value14, value14 value21, value22, value23, value24, value25
tripleee.. 10
如果您知道第一行包含标题,则只需删除该标题的所有其他实例.
awk 'FNR==1 { header = $0; print } $0 != header' file
如果这不起作用,请告诉我们如何识别标题行.如果它只是一个静态字符串,grep -vF 'that string'
或者它与特定的正则表达式匹配,grep -v 'that regex'
.
如果您知道第一行包含标题,则只需删除该标题的所有其他实例.
awk 'FNR==1 { header = $0; print } $0 != header' file
如果这不起作用,请告诉我们如何识别标题行.如果它只是一个静态字符串,grep -vF 'that string'
或者它与特定的正则表达式匹配,grep -v 'that regex'
.