代码之家  ›  专栏  ›  技术社区  ›  jonderry

如何比较两个unix命令的输出以找出差异?

  •  13
  • jonderry  · 技术社区  · 15 年前

    cmd1 > a
    cmd2 > b
    cat a b b | sort | uniq -u
    

    但不使用a和b文件。

    1 回复  |  直到 15 年前
        1
  •  29
  •   wnoise    15 年前

    Unix实用程序通常是面向文件的,因此没有什么能完全满足您的需要。

    但是,zsh可以使用以下语法自动创建临时文件:

    diff =(cmd1) =(cmd2)

    /dev/fdn 引用匿名管道)

    diff <(cmd1) <(cmd2)

    然而,许多 diff lseek() 在它们的输入上,因此无法使用命名管道。

    ( 差异

    有关详细信息,请参阅“zshexpn”手册页的“进程替换”部分。