comm命令linux
-
comm命令是Linux系统中常用的一个文本比较工具,它用于比较两个已经排序过的文件,并找出它们相同的行、不同的行和各文件独有的行。下面将详细介绍comm命令的使用方法及示例。
comm命令的基本语法如下:
comm [选项]… 文件1 文件2
选项:
-1:不显示文件1唯一的行。
-2:不显示文件2唯一的行。
-3:不显示相同的行。
-12:不显示文件1和文件2唯一的行。
-13:只显示文件1和文件2独有的行。
-23:显示文件2存在但文件1不存在的行。示例一:
比较两个文件的差异,并输出各自独有的行:comm file1.txt file2.txt
示例二:
比较两个文件的差异,并只显示共有的行:comm -3 file1.txt file2.txt
示例三:
比较两个文件的差异,并只显示文件2独有的行:comm -13 file1.txt file2.txt
总结:
通过使用comm命令,我们可以方便地比较两个文件的差异,并根据需求输出相同的行、不同的行和各自独有的行。这个命令在文本处理和文件比较方面非常实用,可以帮助我们快速找出文件之间的差异或共同点。2年前 -
comm是一个常用的Linux命令,用于比较两个已排序的文件并输出它们之间的差异。下面是关于comm命令的一些重要信息:
1. 基本语法:
comm [OPTION]… FILE1 FILE22. 文件排序:
在使用comm之前,必须确保输入的文件已经按照字母顺序进行了排序。可以使用sort命令来对文件进行排序,如:
sort FILE1 > sorted_file1
sort FILE2 > sorted_file23. 输出格式:
comm命令的输出根据选项的不同而有所变化。默认情况下,comm输出由三列组成:
– 第一列:只包含在FILE1中出现的行
– 第二列:只包含在FILE2中出现的行
– 第三列:同时出现在FILE1和FILE2中的行4. 常用选项:
– -1:禁止显示只出现在FILE1中的行
– -2:禁止显示只出现在FILE2中的行
– -3:禁止显示同时出现在FILE1和FILE2中的行
– -i:忽略大小写进行比较
– -u:只输出不重复的行5. 使用示例:
(1) 比较两个文件,并显示只出现在FILE1中的行:
comm -23 sorted_file1 sorted_file2(2) 比较两个文件,并显示只出现在FILE2中的行:
comm -13 sorted_file1 sorted_file2(3) 比较两个文件,并显示同时出现在FILE1和FILE2中的行:
comm -12 sorted_file1 sorted_file2(4) 比较两个文件,并只输出不重复的行:
comm -12 sorted_file1 sorted_file2 | uniq总结:comm命令是一个在Linux中用于比较和筛选文件内容的有用工具。它可以帮助用户找到文件之间的差异,并根据需要筛选输出。使用comm命令时,需要确保输入的文件已经按照字母顺序进行了排序。
2年前 -
comm命令是一个用于比较两个已排序文件的工具,它可以显示两个文件的共同行、不同行和独立行。在Linux系统中,comm命令非常有用,特别是在处理大型文件时,它可以帮助我们快速找到文件中的差异部分。
下面是对comm命令的详细介绍。
## 语法
“`
comm [OPTION]… FILE1 FILE2
“`## 参数说明
– `-1`:仅显示`FILE1`独有的行
– `-2`:仅显示`FILE2`独有的行
– `-3`:仅显示`FILE1`和`FILE2`都包含的行
– `-i`:忽略大小写
– `-u`:仅显示独立行,即不包含共同行和不同行
– `-z`:使用NULL作为行分隔符## 示例
假设有两个文件`file1.txt`和`file2.txt`,内容如下:
`file1.txt`:
“`
apple
banana
grape
orange
“``file2.txt`:
“`
apple
cherry
grape
pear
“`### 比较两个文件并显示共同行
“`
comm file1.txt file2.txt
“`输出结果:
“`
apple
grape
“`共同行显示在中间的栏位,这里是在输出结果的第三栏。
### 比较两个文件并显示不同行
“`
comm -3 file1.txt file2.txt
“`输出结果:
“`
banana
orange
cherry
pear
“`不同行显示在输出结果的第一和第二栏。
### 比较两个文件并显示独立行
“`
comm -u file1.txt file2.txt
“`输出结果:
“`
banana
orange
cherry
pear
“`独立行即不包含共同行的行。
### 忽略大小写进行比较
“`
comm -i file1.txt file2.txt
“`输出结果:
“`
cherry
banana
orange
pear
“`忽略大小写后,结果中的行都是不区分大小写的。
### 仅显示`FILE1`独有的行
“`
comm -1 file1.txt file2.txt
“`输出结果:
“`
banana
orange
“``FILE1`独有的行显示在输出结果的第一栏。
### 仅显示`FILE2`独有的行
“`
comm -2 file1.txt file2.txt
“`输出结果:
“`
cherry
pear
“``FILE2`独有的行显示在输出结果的第二栏。
## 注意事项
– `comm`命令要求输入的文件是已排序的,否则输出结果可能会出现错误。
– `comm`命令默认使用制表符作为分隔符,如果两个文件的分隔符不同,可以使用`-t`参数指定分隔符。
– `comm`命令对于大型文件效率更高,如果需要比较大文件,建议使用`comm`命令而不是其他工具。
– `comm`命令可以与其他命令结合使用,比如可以使用`grep`命令对输出结果进行过滤。以上就是对`comm`命令的介绍。通过使用`comm`命令,我们可以比较两个已排序文件中的差异,找到共同行、不同行和独立行,帮助我们在处理文件时更加方便和高效。
2年前