兩個檔案,如:
[root@localhost grep]# cat 1.txtab分析,檔案1.txt和檔案2.txt:cadaa
bbaa
[root@localhost grep]# cat 2/txtab
cbbfsx
1.txt - 2.txt
(a) d aa (aa)
2.txt - 1.txt
fsx1.txt 交 2.txt
a b c bb
namecomm命令比較兩個檔案差異和交集,並輸出為三列,第一列為file1-file2、第二列為file2-file1、第三列為file1和file2的交集。comm - compare two sorted files line by line
synopsis
comm [option]... file1 file2
description
compare sorted files file1 and file2 line by line.
comm命令要求檔案內容必須是排序的且唯一的
直接使用comm命令,如果檔案內容沒有排序或者內容不唯一,則會有提示
[root@localhost grep]# comm 1.txt 2.txt ab使用sort進行先排序,在比較cabbd
comm: file 1 is not in sorted order
aabb
aafsx
[root@localhost grep]# comm <(sort 1.txt) <(sort 2.txt)aa使用uniq進行資料唯一化aaaabbb
cdfsx第一列:1.txt比2.txt多的資料
第二列:2.txt比1.txt沒有的資料
第三列:1.txt和2.txt資料重疊的部分
[root@localhost grep]# comm <(sort 1.txt |uniq) <(sort 2.txt | uniq)aaa差集bbbcd
fsx第一列:1.txt有而2.txt沒有的資料
第二列:2.txt有而1.txt沒有的資料
第三列:1.txt和2.txt資料重疊的部分
namegrep, egrep, fgrep - print lines matching a pattern
synopsis
grep [options] pattern [file...]
grep [options] [-e pattern | -f file] [file...]
description
grep searches the named input files (or standard input if no files are
named, or if a single hyphen-minus (-) is given as file name) for lines
containing a match to the given pattern. by default, grep prints the
matching lines.
-f, --fixed-strings, --fixed-regexp
interpret pattern as a list of fixed strings, separated by
newlines, any of which is to be matched. (-f is specified by
posix, --fixed-regexp is an obsoleted alias, please do not use
it in new scripts.)將pattern解釋為由換行符分隔的固定字串列表,其中任何乙個將被匹配。
-f file, --file=file
obtain patterns from file, one per line. the empty file
contains zero patterns, and therefore matches nothing. (-f is
specified by posix.)從file獲取模式,每行乙個。 空檔案包含零模式,因此不匹配任何內容。
-v, --invert-match
invert the sense of matching, to select non-matching lines. (-v
is specified by posix.),取反
取交集
[root@localhost grep]# grep -f -f 1.txt 2.txt | sort | uniqab取差集bbcgrep不要求排序,但是因為是集合操作,必須是唯一
Linux 兩個檔案求交集 並集 差集
sort a.txt b.txt uniq dsort a.txt b.txt uniq在 a.txt 檔案 現,不在 b.txt 檔案 現 sort a.txt b.txt b.txt uniq u在 b.txt 檔案 現,不在 a.txt 檔案 現 sort b.txt a.txt a.txt ...
Linux 兩個檔案求交集 並集 差集
一 交集 sort a.txt b.txt uniq d comm 12 sort a.txt uniq sort b.txt uniq 二 並集 sort a.txt b.txt uniq grep f f a.txt b.txt sort uniq 三 差集 a.txt b.txt sort a...
Linux 兩個檔案求交集 並集 差集
一 交集 sort a.txt b.txt uniq d 二 並集 sort a.txt b.txt uniq 三 差集 a.txt b.txt sort a.txt b.txt b.txt uniq u b.txt a.txt sort b.txt a.txt a.txt uniq u 四 相關的...