je cherche à afficher un intervalle de champs avec awk; sans avoir à préciser $1,,,,,
merci
Version imprimable
je cherche à afficher un intervalle de champs avec awk; sans avoir à préciser $1,,,,,
merci
Peut être essayer de passer par des index: champ1, champ2, champ3 par exemple:
Ce code afficher le champ 1 et 3Code:echo "AA BB CC " |gawk "{i=1;j=3; print $i $j}"
A toi de faire une fonction ou tu passe un indice de départ et un indice de fin et tu boucle sur l'intervalle
Ce code devrait fonctionner.
Code:awk -v min=2 -v max=5 '{for (i=min; i<=max; i++) {printf "%s%c"$i, OFS} print ""}' fichier
Celui ci fonctionne mieux:
8OCode:awk -v min=2 -v max=5 '{for (i=min; i<=max; i++) {printf "%s%c", $i, OFS} print ""}' fichier
Ouarf... une virgule en plus ou en moins... c'est l'intention qui compte! Ah non? Ah ben d'accord... Alors vous me rejouterez une virgule pour la douze!
Merci bien noooooooooooooooop
Merci pour vos réponses...(avec du recul, c'était evident...)
si je peux rajouter une autre commande qui fait la même chose:
cut -d(séparateur) -f(intervalle de champs)
elle m'a servit qd j'avais des problèmes avec awk