我想通過只取最後一列的一個特定部分來修改文件(gff3格式)!在特定列中使用awk提取模式
我的文件看起來像這樣與標籤空格分隔的九列:
NW_015494524.1時針CDS 1220137 1220159。 - 0 ID = cds20267; Parent = rna22739; Dbxref = GeneID:107513619,Genbank:XP_016006018.1; Name = XP_016006018.1; gbkey = CDS; gene = A3GALT2; product = alpha_1%2C3-galactosyltransferase_2 protein_id = XP_016006018.1
我想只提取出現在最後一列($ 9)中的我的基因名稱(; gene = XXX;)。輸入:
NW_015494524.1 Gnomon CDS 1220137 1220159。 - 0 A3GALT2
後這個工作,我想列4,5,7,8和九關口提取值的唯一列 期望輸出相結合:
A3GALT2 1220137 1220159 - 0
我試圖使用awk
在最後一列中只採用模式gene = xxxx。我的基因名稱是帶或不帶數字的大寫字母;並以';'分隔分號在第九列。
awk FS "[ \t]" '$9 ~/gene=[A-Z0-9]$/ {print $0, $4, $5, $7, $8}' <file>
它不工作。是否有另外一種方法可以與awk
或sed
或grep
比較好?
感謝您提前給予幫助。
您希望輸出爲NW_015494524.1 Gnomon CDS 1220137 1220159。 - 0 A3GALT2'或'NW_015494524.1 Gnomon CDS 1220137 1220159。 - 0',請給我們解釋一下嗎? – RavinderSingh13
對不起。我想分兩部分來做,但我可以一次完成。我想要基因名稱,位置,鏈和階段。感謝解決方案。 – Nico64