Bashで2つのファイルのヘッダーを比較する

Bashで2つのファイルのヘッダーを比較する

diff filea filebファイル間の違いを見ることができます。head -1 fileafileaまたはfilebの最初の行も表示できます。 fileaの最初の行とfilebの最初の行の違いを示すために、これらのコマンドをどのように組み合わせることができますか?

答え1

シェルがサポートしている場合プロセスの交換、努力する:

diff <(head -n 1 filea) <(head -n 1 fileb)

答え2

各ファイルの最初の行のみを比較する場合は、その行内の単語レベルの変更に興味がある場合は、以下を使用してくださいdwdiff

dwdiff <(head -n 1 filea) <(head -n 1 fileb)

dwdiff-c変更された単語を色付けするなど、いくつかの良いオプションがあります。

またはsed代わりに頭を使用してください。

dwdiff <(sed 1q filea) <(sed 1q fileb)

~へヘッドマニュアルhead -1提案は、時間の経過とともにヘッドの構文が変化したため、ヘッドよりも移植性が優れている。head -n 1

また、いくつかの入力だけで変更を確認できます。

head -n1 -q filea fileb

より簡単な視覚比較のために、2本の線が別の線の下に表示されます。

答え3

あなたはそれを使用することができます:

if [ "`head -1 file1`" == "`head -1 file2`" ]; then echo "the same"; fi

関連情報