我有两个CSV文件 - nodes.csv和edges.csv - 其中列是制表符分隔的。我已使用
删除了nodes.csv中的某些行awk -F'\t' -i inplace '($3 != "Symbol")' nodes.csv
如何删除edges.csv中的相应行?
例如,在nodes.csv中,我有:
ANR 35755 ParameterType uint32_t
CYP 35756 Identifier status
ANR 35757 CFGEntryNode ENTRY
ANR 35758 CFGExitNode EXIT
ANR 35759 Symbol * host
CYP 35760 Symbol * irq_status_bits
ANR 35761 Symbol irq_status_bits
在edges.csv中,我有:
35738 35758 FLOWS_TO
35689 35759 USE
35701 35759 USE
35727 35760 USE
35734 35760 USE
35727 35761 USE
35735 35761 USE
我需要删除nodes.csv
中的第5,6,7行,因为第3列有值符号。如何删除edges.csv
中的第5,6,7行?
输出:
nodes.csv
ANR 35755 ParameterType uint32_t
CYP 35756 Identifier status
ANR 35757 CFGEntryNode ENTRY
ANR 35758 CFGExitNode EXIT
edges.csv
:
35738 35758 FLOWS_TO
35689 35759 USE
35701 35759 USE
35727 35760 USE
非常感谢!
答案 0 :(得分:0)
awk -F'\t' -i inplace 'NR==FNR{if ($3 != "Symbol") a[NR]} FNR in a' nodes.csv edges.csv