comm命令linux

不及物动词 其他 204

回复

共3条回复 我来回复
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    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年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    comm是一个常用的Linux命令,用于比较两个已排序的文件并输出它们之间的差异。下面是关于comm命令的一些重要信息:

    1. 基本语法:
    comm [OPTION]… FILE1 FILE2

    2. 文件排序:
    在使用comm之前,必须确保输入的文件已经按照字母顺序进行了排序。可以使用sort命令来对文件进行排序,如:
    sort FILE1 > sorted_file1
    sort FILE2 > sorted_file2

    3. 输出格式:
    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年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    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年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部