0

同様の数の列を持つ2つのデータファイルがあります。file1 に既に存在する行を除外しながら、file2 を別のファイル (file3) に保存したいと思います。

grep -v -i -f file1 file2> file3

しかし、問題は、file1 の列間のスペースが "\t" であるのに対し、他のファイルでは " " であることです。したがって、このコマンド ラインは機能しません。なにか提案を??

ありがとう!

4

3 に答える 3

0

試す:

grep -Fxvf file1 file2

grep man ページから利用可能なスイッチの意味。

于 2013-09-24T12:57:57.333 に答える
0

grep -v -f は、file1 の各行に対して file2 を検索するため、問題があります。大きなファイルの場合、非常に長い時間がかかります。代わりにこれを試してください:

comm -13 <(cat file1 | tr '\t' ' ' | sort) <(sort file2)

于 2013-09-25T05:38:00.373 に答える