Alors vraiment le traitement de fichier (ligne par ligne qui plus est) n'est pas ma tasse de miel . Je voulais rediger un script me permettant de separer les lignes avec les actions successives manger, dormir, rever. Donc en gros tester que la ligne contient manger, ensuite tester que la suivante contient dormir et que la suivante contient rever. Je voulais ensuite verifier que les lignes sont identiques sans toutefois tester l'action car je les aurais deja alignees. Donc voici ce que j'ai fait
Cependant je me suis rendu compte que je ne sais pas comment dire a mon script d'aller sur la ligne suivante apres avoir fini la ligne courante et je ne sais pas non plus comment comparer deux lignes (pour tester une valeur precise sur chaque ligne) .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 #!/bin/bash #sed 's/[ ,]/|/g' fichier | while IFS='|' read -r col1 col2 col3 col4 col5 col6 col7 col8 col9 col10 col11 col12 col13 col14; do while IFS='|' read -r ligne; do # afficher le separateur sur toutes les lignes contenant le mot manger if [[ $ligne == *"manger"* ]]; then afficherligne="oui" echo "----------separateur------------->>" #if [[ $ligne == *"dormir"* ]]; then # oldligne=$ligne #fi fi # afficher les lignes (le separateur se trouvera avant chaque ligne contenant le mot manger) if [[ $afficherligne == "oui" ]] ; then echo "$ligne" fi done < fichier
comme vous vous doutez voici mon resultat
Comme vous pouvez le voir, j'ai pas pu filtrer mon fichier sur les actions
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 ----------separateur------------->> mardi, 25 Decembre 2017 19:50:50 Rouen|Charles| - |manger| - mardi, 25 Decembre 2017 19:50:50 Rouen|Charles| - |dormir| - mardi, 25 Decembre 2017 19:50:50 Rouen|Charles| - |rever| - ----------separateur------------->> mardi, 25 Decembre 2017 20:10:23 Paris|Fabrice| - |manger| - ----------separateur------------->> mardi, 25 Decembre 2017 20:40:13 Strasbourg|Paul| - |manger| - mardi, 25 Decembre 2017 21:05:23 Dakar|Paul| - |dormir| - mardi, 25 Decembre 2017 21:05:23 Dakar|Paul| - |rever| - ----------separateur------------->> mardi, 25 Decembre 2017 22:35:53 Pologne|Christian| - |manger| - ----------separateur------------->> mardi, 25 Decembre 2017 22:35:53 Pologne|Christian| - |manger| - mardi, 25 Decembre 2017 22:35:53 Pologne|Christian| - |dormir| - mardi, 25 Decembre 2017 22:35:53 Pologne|Christian| - |rever| - ----------separateur------------->> mardi, 25 Decembre 2017 23:33:34 Casablanca|Benjim| - |manger| - mardi, 25 Decembre 2017 23:33:34 Casablanca|Benjim| - |dormir| - mardi, 25 Decembre 2017 23:33:34 Casablanca|Benjim| - |parler| - mardi, 25 Decembre 2017 23:33:34 Casablanca|Benjim| - |rever| - ----------separateur------------->> mardi, 25 Decembre 2017 23:45:54 Miami|Arno| - |manger| - mardi, 25 Decembre 2017 23:45:54 Miami|Arno| - |dormir| - mardi, 25 Decembre 2017 23:45:54 Miami|Arno| - |rever| -
eh ben j'ai bien peur que je ne sois pas sorti de l'aubergeEnvoyé par N_BaH
Partager