Comillas dobles en una columna específica usando awk o sed

Comillas dobles en una columna específica usando awk o sed

Tengo esta entrada:

##gff-version 3
chr1    TAIR10  mRNA    3631    5899    .   +   .   ID AT1G01010.1 ;geneID AT1G01010 ;gene_name AT1G01010
chr1    TAIR10  exon    3631    3913    .   +   .   Parent AT1G01010.1
chr1    TAIR10  exon    3996    4276    .   +   .   Parent AT1G01010.1
chr1    TAIR10  exon    4486    4605    .   +   .   Parent AT1G01010.1
chr1    TAIR10  exon    4706    5095    .   +   .   Parent AT1G01010.1
chr1    TAIR10  exon    5174    5326    .   +   .   Parent AT1G01010.1
chr1    TAIR10  exon    5439    5899    .   +   .   Parent AT1G01010.1

Quiero que ID, geneID y gene_name tengan comillas dobles como el siguiente resultado:

  ##gff-version 3
    chr1    TAIR10  mRNA    3631    5899    .   +   .   ID "AT1G01010.1" ;geneID "AT1G01010" ;gene_name "AT1G01010"
    chr1    TAIR10  exon    3631    3913    .   +   .   Parent "AT1G01010.1"
    chr1    TAIR10  exon    3996    4276    .   +   .   Parent "AT1G01010.1"
    chr1    TAIR10  exon    4486    4605    .   +   .   Parent "AT1G01010.1"
    chr1    TAIR10  exon    4706    5095    .   +   .   Parent "AT1G01010.1"
    chr1    TAIR10  exon    5174    5326    .   +   .   Parent "AT1G01010.1"
    chr1    TAIR10  exon    5439    5899    .   +   .   Parent "AT1G01010.1"

he estado probando con

awk '{sub($10, "\"&\""); print}' file.gtf

Gracias por leer mi pregunta

Respuesta1

rápido y sucio

sed -E 's#(ID|Parent|gene_name) ([0-9A-Za-z.]+)#\1 \"\2\"#g'

información relacionada