0

標準のコマンドラインツールjoinを使用して2つのファイルを結合しようとしています。ドキュメントによると、このために両方の入力ファイルを並べ替える必要があります。最初はsort、これを実現するためにそれらをパイプでつなぎましたが、それでも「結合:ファイル2はソートされた順序ではありません」などのエラーが発生しました。次に、これをもう少し詳しく調べて、使用することになっていることがわかりましたがsort -k 1b,1、それも役に立たなかったようです。ロケール(設定LANG=CまたはLANG=EN_en)をいじってみましたが、何も機能していないようです。

これまでに試しました:

  • cat x | sort | join -j 1 a -
  • cat x | sort -k1b,1 | join -j 1 a -
  • cat x | LANG=C sort -k1b,1 | join -j 1 a -
  • cat x | LANG=EN_en sort -k1b,1 | join -j 1 a -

では、ソートされていないファイルで結合を正しく使用するにはどうすればよいですか?

4

1 に答える 1

1

基本的に :

join <(sort file1) <(sort file2) 
于 2013-02-28T11:09:05.727 に答える