difference between the content of two files

后端 未结 4 1180
南笙
南笙 2020-12-06 02:58

I have two files one file subset of other and i want to obtain a file which has contents not common to both.for example

File1

apple
         


        
相关标签:
4条回答
  • 2020-12-06 03:06

    use awk, no sorting necessary (reduce overheads)

    $ awk 'FNR==NR{f[$1];next}(!($1 in f)) ' file2 file
    mango
    orange
    jackfruit
    grapes
    okra
    
    0 讨论(0)
  • You can sort the files then use comm:

    $ comm -23 <(sort file1.txt) <(sort file2.txt)
    grapes
    jackfruit
    mango
    okra
    orange
    

    You might also want to use comm -3 instead of comm -23:

      -1              suppress lines unique to FILE1
      -2              suppress lines unique to FILE2
      -3              suppress lines that appear in both files
    
    0 讨论(0)
  • 2020-12-06 03:18

    1 Only one instance , in either

    • cat File1 File2 | sort | uniq -u

    2 Only in first file

    • cat File1 File2 File2 | sort | uniq -u

    3 Only in second file

    • cat File1 File1 File2 | sort | uniq -u
    0 讨论(0)
  • 2020-12-06 03:22

    1. Files uncommon to both files

    diff --changed-group-format="%<" --unchanged-group-format="%>" file1 file2
    

    2. File unique to first file

    diff --changed-group-format="%<" --unchanged-group-format="" file1 file2
    

    3. File unique to second file

    diff --changed-group-format="" --unchanged-group-format="%>" file1 file2
    

    Hope it works for you

    0 讨论(0)
提交回复
热议问题