2013-02-18 4 views
0

J'ai des fichiers de données délimités par des tabulations avec des numéros de colonne différents. Je veux ajouter une ligne d'en-tête à ces fichiers, la ligne d'en-tête contient seulement 'ID' dans la première colonne, cependant, le numéro de colonne total de la ligne d'en-tête devrait être le même que le fichier. Puis-je le faire avec certaines commandes Linux? Merci beaucoup!!Ajouter une ligne avec des colonnes vides dans un fichier délimité par des tabulations

Répondre

1
sed -i '1 { h; s/[^\t]//g; s/^/ID/; p; g; }' *.tsv 

Copie la première ligne, supprimer tous les non-onglets (pour effacer le contenu du champ), amure sur « ID », puis imprimez cette ligne ainsi que l'original.

+0

Très bien! Merci beaucoup! – Runner

2
for file in * 
do 
    awk 'NR==1{hdr=$0; gsub(/[^\t]/,"",hdr); print "ID" hdr}1' "$file" > tmp && 
    mv tmp "$file" 
done 
Questions connexes