私はAWKの(非常に)基本的な理解を持っています。これを行ういくつかの方法を試しましたが、すべてが必要以上に多くの行を出力します:
に10行ありfile.1
ます:
chr10 234567
chr20 123456
...
chrX 62312
大文字に移動して の最初の 2 列と一致させたいfile.2
ので、下の 1 行目は上の 2 行目に一致しますが、位置については上の 3 行目に一致するが chr には一致しない下の 2 行目を取得したくありません。下の最初の行が上の最初の行と一致するようにします。
CHR20 123456 ... 234567
CHR28 234567 ... 62312
私は持っている:
$ cat file.1 | tr '[:lower:]' '[:upper:]' | <grep? awk?>
続行する方法を知りたいです。以前は単純なgrepを使用していましたがfile.1
、検索されたファイルで2番目の列がより多く一致するため、数百行が返されます。最初の 2 列で一致させたいだけです (これらは の最初の 2 列に対応しますfile.2
)。
それがあなたにとって十分に明確であることを願っています、あなたの答えを楽しみにしています=)