2つのコマンドの出力を区別する方法は? [コピー]

2つのコマンドの出力を区別する方法は? [コピー]

diffこのコマンドを使用して2つのコマンドの出力を比較するにはどうすればよいですか?

そんなことがありますか?

diff  ($cat /etc/passwd) ($cut -f2/etc/passwd)

答え1

使用プロセスの交換:

diff <(cat /etc/passwd) <(cut -f2 /etc/passwd)

<(...)プロセス置換と呼ばれます。コマンドの出力をdiff読み取り可能なファイルなどのオブジェクトに変換します。

プロセス置換はPOSIXではありませんが、bash、ksh、およびzshはこれをサポートします。

答え2

2つのコマンド出力の違い: -

$ diff <(command1) <(command2)

コマンド出力とファイルの違い: -

$ diff <(command) filename

2つのファイルの違い: -

$ diff file1 file2

例えば$ diff <(mount) <(cat /proc/mounts)

関連情報