2列の値のCSV検索

2列の値のCSV検索

20個の奇妙な列を持つCSVファイルがあります。

"VALUE1"14列の値は、15列の値は14列と15列の値を取得する必要があります"VALUE2"

VALUE1私の条件は、列14にあり、列15にある場合にのみ満たされますVALUE2。総数を求める必要があります。

数のリストを提供し、14番目と15番目の列値を提供するwc -lことが可能であると思いました。しかし、14日と15日があることをcut -d "," -f14,15どのように確認しますか?VALUE1VALUE2

私は次のことがうまくいくと思います。

grep -r "" * | cut -d " " -f14,15 | grep "Value1" | grep "Value2"

しかし、私はこれが完璧なアプローチではないと思います。

ベストアンサー1

awkここがもっと役に立つかもしれません。

たとえば、

$> echo "a b c d e" | awk '$2=="b" && $3=="c" {print}'
a b c d e

$> echo "a b c d e" | awk '$2=="a" && $3=="c" {print}'

$> echo "a b c d e" | awk '$2=="b" && $3=="d" {print}'

したがって、あなたの質問に対する答えは次のとおりです。

awk '$14=="VALUE1" && $15=="VALUE2" {print}'

おすすめ記事