別の行にあるファイルをマージする最速のコマンドライン方法は何ですか?たとえば、次の2つのファイルがあります。
a.txt:
foo
bar
foobar
b.txt
foo
foobar
line
by
bar
次の出力を取得したい。
foo
bar
foobar
line
by
上記の例のようにファイルをマージする簡単な方法はありますか? (行の順序は重要ではありません)
ベストアンサー1
$ sort -u a.txt b.txt
bar
by
foo
foobar
line
これにより、2つのファイルの(結合された)内容がソートされ、重複した行が削除されます。欠点は、1行がファイルに重複している場合、その行も削除されることです。
結果を書き込むには、c.txt
次を使用します。
sort -u -o c.txt a.txt b.txt
または標準リダイレクト
sort -u a.txt b.txt >c.txt