linux命令comm的用法
-
comm命令是Linux系统中的一个基础命令,用于比较两个已排序的文件并找出共有行、独有行或不同行。它的语法格式为:
comm [选项]… 文件1 文件2
其中,文件1和文件2为待比较的文件。
comm命令的选项有以下几种常用的:
-1:不显示第一个文件独有的行;
-2:不显示第二个文件独有的行;
-3:不显示两个文件共有的行;
–check-order:检查输入文件是否已按照排序顺序排列;
–nocheck-order:不检查输入文件的排序顺序。使用comm命令的一个常见场景是比较两个文件,找出共有的行。例如:
comm -12 file1.txt file2.txt
这条命令将比较file1.txt和file2.txt两个文件,并显示两个文件共有的行。-12选项的含义是不显示独有行,只显示共有行。
另外,我们还可以使用comm命令找出文件1中独有的行或文件2中独有的行。例如:
comm -23 file1.txt file2.txt
这条命令将比较file1.txt和file2.txt两个文件,并显示文件1独有的行,-23选项的含义是不显示共有行,只显示文件1中独有的行。
同时,comm命令也支持和其他命令结合使用,进行更复杂的操作。例如,我们可以使用comm命令和sort命令一起使用,对两个文件进行排序并比较。具体用法如下:
comm <(sort file1.txt) <(sort file2.txt)这条命令将对file1.txt和file2.txt两个文件进行排序,并使用comm命令比较它们。这样做可以确保文件已按照排序顺序排列,避免错误的比较结果。总的来说,comm命令是一个非常实用的比较文件的工具,可以帮助我们找出两个文件中的共有行、独有行或不同行,方便我们进行文件内容的比较和处理。
2年前 -
comm命令用于比较两个已排序的文件,并以行为单位显示文件之间的相似和不同之处。它可以帮助用户找出两个文件中共有的行、文件1独有的行以及文件2独有的行。
comm命令的基本语法为:
“`
comm [OPTION]… FILE1 FILE2
“`下面是comm命令的几个常用选项:
1. -1:不显示文件1中独有的行。
2. -2:不显示文件2中独有的行。
3. -3:不显示两个文件共有的行。
4. -i:不区分大小写进行比较。
5. -u:只显示两个文件中的唯一行。使用示例:
假设我们有两个文件`file1.txt`和`file2.txt`分别包含以下内容:file1.txt:
“`
apple
banana
orange
“`file2.txt:
“`
apple
grape
orange
“`1. 显示两个文件中的共有行:
“`
$ comm file1.txt file2.txt
apple
orange
“`
结果中的第一列为空格,表示共有的行;第二列是`file1.txt`独有的行;第三列是`file2.txt`独有的行。2. 只显示`file1.txt`中独有的行:
“`
$ comm -23 file1.txt file2.txt
banana
“`3. 不区分大小写进行比较:
“`
$ comm -i file1.txt file2.txt
apple
banana
grape
orange
“`
结果中所有行都被显示,并且不区分大小写。4. 只显示两个文件中的唯一行:
“`
$ comm -u file1.txt file2.txt
apple
banana
grape
orange
“`
结果中所有行都被显示,且没有重复的行。以上就是comm命令的基本用法和几个常用选项。通过比较两个已排序的文件,comm命令可以帮助用户快速找到共有和不同的行,并加快了文件比较的过程。
2年前 -
comm命令是Linux系统中的一个文本处理工具,主要用于比较两个已经分别排好序的文件,并根据比较结果输出文件的交集、差集和并集等。
comm命令的基本语法如下:
“`shell
comm [选项] FILE1 FILE2
“`其中,FILE1和FILE2是需要进行比较的两个文件的名称。
下面将详细介绍comm命令的一些常用选项和用法:
### 1. -1, -2, -3
选项`-1`、`-2`和`-3`用于指定输出的内容,分别对应于FILE1、FILE2和两个文件的交集。例如:
“`shell
comm -1 FILE1 FILE2
“`### 2. -i
选项`-i`表示在比较过程中忽略大小写。即使在文件的排序顺序不同的情况下,也会被视为相同的行。
### 3. -c
选项`-c`用于计数输出。会在输出的每一行前面添加一个以制表符分隔的计数器,表示该行在输入文件中的出现次数。
### 4. -d
选项`-d`表示仅输出两个文件相同的行。不包括只在一个文件中出现的行。
### 5. -u
选项`-u`表示仅输出两个文件不同的行。不包括在两个文件中都出现的行。
### 6. -t
选项`-t`用于指定输出时的分隔符。默认情况下,comm命令使用制表符作为分隔符。可以使用`-t`选项来指定其他分隔符。
### 7. 示例
假设有两个已经排序的文件file1.txt和file2.txt,内容分别如下:file1.txt:
“`shell
apple
banana
grape
lemon
orange
“`file2.txt:
“`shell
banana
grape
kiwi
lemon
“`使用comm命令比较这两个文件:
“`shell
comm file1.txt file2.txt
“`输出结果为:
“`shell
apple
kiwi
orange2年前