[重複]列で正確な文字列を検索する

[重複]列で正確な文字列を検索する

単語は行内に「、」で区切られ、各行には同じ数の単語(例:4)があるファイルがあります。したがって、その形は次のとおりです。

something1,something2,something3,something4

4番目の列に含まれる行を正確に検索したいのですがsomething4、次のような行がある場合はどうすればよいですか?

something1,something2,something3,1_something4

grepを使用すると、これら2つの行を取得できますが、4番目の要素の行だけが必要です。something4どうすればいいですか?

ベストアンサー1

次の目的で使用できますawk

awk -F, '$4 == "something4"' file.csv

4番目の列を持つ行の行全体を印刷する必要があります。something4


変数を渡すには、awk次のことが必要です。

var1=$(echo "something,something4" | cut -f2 -d,)
awk -F, -vsearch="$var1" '$4 == search' file.csv

おすすめ記事