この質問は以前の回答に関連しています。awkを区切り文字で除算し、最初の項目を取得します。-
VCFファイル(タブ区切り形式)の場合:
chr1 28374C T 0.0 PASS AF=0.730769;AO=19;DP=26;
chr1 29631A G 0.0 PASS AF=0.6;AO=6;DP=10;ALLELEID=1396033;
chr1 39322CAC ACC 0.0 PASS AF=0.266667,0.266667;AO=4,4;DP=16;
次の出力を取得したい。
AF
AO
DP
AF
AO
DP
ALLELEID
AF
AO
DP
期待どおりにすべてのAFアイテムをインポートしますが、awk '{split($6,a,/;/); split(a[1],b,/=/); print b[1]}' file
残りのキーを抽出する方法がわかりません。a
2番目の分割でコンテンツ全体をどのように渡しますか?
ベストアンサー1
POSIX awkを使用してください。
$ awk -F'[[:space:]=;]+' '{for (i=6; i<NF; i+=2) print $i}' file
AF
AO
DP
AF
AO
DP
ALLELEID
AF
AO
DP