Retour a la ligne avec awk.
Résolu
econdami
Messages postés
253
Statut
Membre
-
dubcek Messages postés 18627 Date d'inscription Statut Contributeur Dernière intervention -
dubcek Messages postés 18627 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je veux faire une sortie avec awk sur plusieurs lignes, alors j'utilise "/n" mais dans ce cas il y a un espace en debut de nouvelle ligne. Je ne trouve pas comment repartir sur une nouvelle ligne directement en debut de ligne. Si quelqu'un a la solution, merci d'avance.
Voila ce que je fais:
awk '{print $1, $2, "HN", $3"\n", $1, $2, "N", $4"\n", $1, $2, "CA", $5"\n", $1, $2, "CB", $6"\n", $1, $2, "CO", $7}' < test >> test_final
Bonne journee
Je veux faire une sortie avec awk sur plusieurs lignes, alors j'utilise "/n" mais dans ce cas il y a un espace en debut de nouvelle ligne. Je ne trouve pas comment repartir sur une nouvelle ligne directement en debut de ligne. Si quelqu'un a la solution, merci d'avance.
Voila ce que je fais:
awk '{print $1, $2, "HN", $3"\n", $1, $2, "N", $4"\n", $1, $2, "CA", $5"\n", $1, $2, "CB", $6"\n", $1, $2, "CO", $7}' < test >> test_final
Bonne journee
3 réponses
-
J'ai trouve une methode que je ne trouve pas tres elegante mais qui marche !!!:
awk 'BEGIN{OFS="";}{print substr($1,2)," " $2, " HN", " "$3"\n", substr($1,2), " "$2, " N", " "$4"\n", substr($1,2), " "$2, " CA", " "$5"\n", substr($1,2), " "$2, " CB
", " "$6"\n", substr($1,2), " "$2, " CO", " "$7}' < test >> test_final -
hello
enlever la virgule après \n, virgule == 1 espaceawk '{print $1, $2, "HN", $3"\n" $1, $2, "N", $4"\n" $1, $2, "CA", $5"\n" $1, $2, "CB", $6"\n" $1, $2, "CO", $7}' < test >> test_finalexemple$ echo aa bb | awk '{print $1, $2}'
aa bb
$ echo aa bb | awk '{print $1 $2}'
aabb -
Super !!!! merci beaucoup je n'avais pas vu cette subtilite !!!
Merci encore.
Bonne journee !