Extraction de champs avec awk

eric_s -  
 sparc2000 -
Bonjour,
je veux extraire des colonnes à partir d'un fichier texte de ce type:

A 1 3 2 5 1...
B 2 1 5 7 8...
C 9 1 4 6 4...
...

mais au lieu d'indiquer $1,$2,$3... je voudrais spécifier un intervalle comme par exemple: $1-$3

j'utilse awk sous windows et il semble que la syntaxe est différence de cette que je connaissais sous linux comme par "tab" pour indiquer une tabulation alors que sous linux "\t" fonctionnait.

merci d'avance pour m'aider à solutionner ce problème.

2 réponses

dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
hello
il faut faire une boucle {for(i=1;i<4;i++)print $i}
1
sparc2000
 
Avec la commande "print", chaque champ affiché est sur une ligne différente.
Avec la commande suivante, on a les différents champs sur la même ligne :
awk '{ for (x=3; x<=NF; x++) { printf "%s%c", $x, OFS } print "" }'
0
birkamoi Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
salut,
Est ce que t'as trouvé comment on fait pour sélectionner un intervalle de champs avec AWK
Si qqn à la réponse.
Merci
0