使用bash和awk比较两个文件并更新第二个文件并对第二个文件进行排序

时间:2016-03-14 18:02:06

标签: linux bash awk sed

我有两个文件,每个文件中有两个列,我想比较两个文件的第一列。如果第一个文件中第一列的值在第二个文件中不存在,那么我想在第一个文件的第一列中追加第二个文件的值,例如

firstFile.log

1457935407,998181
1457964225,998191
1457969802,997896

secondFile.log

1457966024,1
1457967635,1
1457969802,5
1457975246,2

之后,secondFile.log应如下所示:

1457935407,null
1457964225,null
1457966024,1
1457967635,1
1457969802,5
1457975246,2

注意:第二个文件应在更新后按第一列排序。

2 个答案:

答案 0 :(得分:2)

使用definitions: Thing: properties: parent_thing: $ref: '#/definitions/Thing' awk

sort

答案 1 :(得分:1)

使用非awk工具......

$ sort -t, -uk1,1 file2 <(sed 's/,.*/,null/' file1)

1457935407,null
1457964225,null
1457966024,1
1457967635,1
1457969802,5
1457975246,2