Organiser le contenue d'un fichier

Résolu/Fermé
brahim - Modifié par brahim le 9/05/2016 à 12:45
 brahim - 11 mai 2016 à 14:12
Bonjour,
je suis débutant en script shell et j'ai un fichier qui est construise comme suit:

2016-04-20 op1 op2

2016-04-21 op4 op5

et je veux que la sortie soit le fichier suivant

2016-04-20 op1
2016-04-20 op2
2016-04-21 op4
2016-04-21 op5

existe t il une manier avec awk ou sed we un autre script shell pour faire ce ci .?
Mercii



A voir également:

1 réponse

dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
9 mai 2016 à 13:13
hello
$ awk 'NF {x=$1; print $1, $2; print x, $3}' fichier
2016-04-20 op1
2016-04-20 op2
2016-04-21 op4
2016-04-21 op5
0
Merci dubcek ça marche mai cela valable pour deux opérations seulement sur la ligne y a t il une maniéré pour généralise les opérations c a d quelque soit le nombre des opérations sur la ligne ? par ce que dans mon cas le nombre des opérations varie
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
Modifié par dubcek le 9/05/2016 à 14:12
montre un exemple
comme ça ?
$ cat fichier
2016-04-20 op1 op2 op3
2016-04-21 op4 op5
2016-04-22 op6 op7 op8 op9
$ awk 'NF {for (n=2; n<=NF; n++)print x$1, $n}' fichier
2016-04-20 op1
2016-04-20 op2
2016-04-20 op3
2016-04-21 op4
2016-04-21 op5
2016-04-22 op6
2016-04-22 op7
2016-04-22 op8
2016-04-22 op9
0
example ficher input
2016-04-20 op1 op2 op3...
2016-04-21 op1 op2 op4 op8 op9
2016-04-22 op8
2016-04-23 op7 op3


fichier output
2016-04-20 op1
2016-04-20 op2
2016-04-20 op3
.
.
2016-04-21 op1
2016-04-21 op2
2016-04-21 op4
2016-04-21 op8
2016-04-21 op9

2016-04-22 op8

2016-04-23 op7
2016-04-23 op3

Merci
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
9 mai 2016 à 14:15
voir post précédednt
0
Merci ça marche maintenant
0