ある列が別の列と部分的に一致する場合

ある列が別の列と部分的に一致する場合

同じファイルの列を比較しようとしています。テーブルは次のとおりです。

  G  A  AA  GG CC TT CT
  C  T  CC  TT GG GG AA

私が望むのは、最初と2番目の列を残りの列と比較して、最初または2番目の列の一部が含まれていることを確認することです。

このような:

awk '$1 == ^$3 || $2 == ^$3 {print $0}' File.txt

それとも

awk '$1 ~ /$3/ || $2 ~ /$3/ {print $0}' File.txt

しかし、うまくいきません。このタイプの熱間比較をどのように実行できますか?

ベストアンサー1

あなたの比較は逆です。次の回避策を試してください。

awk '$3 ~ $1 || $3 ~ $2 { print }' inputfile
awk 'match( $3, $1 ) || match( $3, $2 ) { print }' inputfile

サンプルコードでは(食事文字列と一致していますか?)代わりに(食事文字列と一致しますか?)$1 ~ $3に展開しようとしています。C ~ /CC//CC/CCC ~ /C//C/CC

おすすめ記事