Récupération d'un nombre de lignes entre chaque mot "demande"
Résolu/Fermé
A voir également:
- Récupération d'un nombre de lignes entre chaque mot "demande"
- Voir mot de passe wifi android - Guide
- Comment récupérer un compte yahoo sans mot de passe - Guide
- Mettre un mot de passe sur un dossier - Guide
- Mot de passe administrateur - Guide
- Trousseau mot de passe iphone - Guide
5 réponses
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 418
8 oct. 2012 à 13:36
8 oct. 2012 à 13:36
Salut,
L'extraire comment ? Tout d'un coup ?
Merci de poster un exemple AVANT => APRÈS !
L'extraire comment ? Tout d'un coup ?
Merci de poster un exemple AVANT => APRÈS !
dubcek
Messages postés
18755
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
14 novembre 2024
5 621
8 oct. 2012 à 14:49
8 oct. 2012 à 14:49
hello
sur Solaris, utiliser nawk
sur Solaris, utiliser nawk
$ nawk '/^demande/ {f=$2; next} {print > f}' toto $ more ? :::::::::::::: t :::::::::::::: action 10..... action 11... :::::::::::::: x :::::::::::::: action 1...... action 2...... :::::::::::::: y :::::::::::::: action 3...... action 4...... action 5...... :::::::::::::: z :::::::::::::: action 6..... action 7...... action 8...... action 9....... $
dubcek
Messages postés
18755
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
14 novembre 2024
5 621
23 oct. 2012 à 12:44
23 oct. 2012 à 12:44
avec /^demande/ nawk va chercher les lignes qui commencent exactement par demande et prendre le champ 2 comme nom de fichier
y a-t-il des majuscules, espace ou autre ?
y a-t-il des majuscules, espace ou autre ?
re dubcek
c'est cette commande que j'ai utilisé: nawk '/^AGENCE/ {f=$2; next} {print > f}' toto ça marche comme je voulait le seul probleme c'est que le nawk ne parcour pas tout le fichier toto jusqu'à la fin c'est à dire que j'ai en sortie:
fichier x, fichier y, ........... pas la totalité des fichiers manque les fichiers : ... n-2, n-1,n
cordiales salutation !
c'est cette commande que j'ai utilisé: nawk '/^AGENCE/ {f=$2; next} {print > f}' toto ça marche comme je voulait le seul probleme c'est que le nawk ne parcour pas tout le fichier toto jusqu'à la fin c'est à dire que j'ai en sortie:
fichier x, fichier y, ........... pas la totalité des fichiers manque les fichiers : ... n-2, n-1,n
cordiales salutation !
dubcek
Messages postés
18755
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
14 novembre 2024
5 621
23 oct. 2012 à 16:32
23 oct. 2012 à 16:32
est-ce que grep '^AGENCE' toto trouve toutes les lignes ?
merci pour la commande dubcek par contre j'ai l'erreur suivante:
nawk: null file name in print or getline
enregistrement d'entrée no 1, fichier toto
numéro de ligne source 1
cordiales salutations!
nawk: null file name in print or getline
enregistrement d'entrée no 1, fichier toto
numéro de ligne source 1
cordiales salutations!
dubcek
Messages postés
18755
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
14 novembre 2024
5 621
9 oct. 2012 à 08:30
9 oct. 2012 à 08:30
le champ 2 est vide, affiche les premières lignes du fichier
dubcek
Messages postés
18755
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
14 novembre 2024
5 621
9 oct. 2012 à 16:18
9 oct. 2012 à 16:18
exécuter ça pour voir ce qu'il fait
nawk '/^demande/ {f=$2; print "creation de: " f; next} {print "\tajout de: " $0; print $0 > f}' toto
Bonjour dubcek:
tout mes fichier sont dans le répertoire / mnt / incident / :
/ mnt / incident / liste
/ mnt / incident / groupe1.............................................groupe10
/ mnt / incident / 101.........................................................412
Le travail demandé et de lire toutes les lignes du fichier liste une par une avec une boucle for par example et voir à quel groupe la ligne appartient-elle.
par example: je lis la première ligne du fichier liste qui est 101, je regarde si 101 appartient au fichier groupe1 oui il appartient au groupe1 alors je copie le contenu du fichier 101 dans un nouveau fichier que je vais nommé incident_groupe1 :
* contenu du fichier 101 est :
AGENCE 101
mardi, 13 novembre 2012, 15:44:15 CET
=> Sauvegarde avant TFJ du 13112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
je lis la deuxième ligne du fichier liste qui est 114, je regarde si 114 appartient au fichier groupe1 oui il appartient au groupe1 alors je copie le contenu du fichier 114 dans le fichier incident_groupe1 :
* contenu du fichier 114 est :
AGENCE 114
mardi, 13 novembre 2012, 15:28:46 CET
=> Sauvegarde avant TFJ du 13112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
je lis la troisième ligne du fichier liste qui est 117, je regarde si 117 appartient au fichier groupe1 NON, il appartient au groupe2 alors je copie le contenu du fichier 117 dans un nouveau fichier que je vais nommé incident_groupe2 :
est ainsi de suite pour toutes les ligne lues du fichier liste.
* contenu du fichier 117 est :
AGENCE 117
mardi, 13 novembre 2012, 15:55:16 CET
=> Sauvegarde apres TFJ du 13112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
à ce state le fichier le contenu du fichier incident_groupe1 est :
AGENCE 101
mardi, 13 novembre 2012, 15:44:15 CET
=> Sauvegarde avant TFJ du 13112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 114
mardi, 13 novembre 2012, 15:28:46 CET
=> Sauvegarde avant TFJ du 13112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
.
.
à ce state le fichier le contenu du fichier incident_groupe2 est :
AGENCE 117
mardi, 13 novembre 2012, 15:55:16 CET
=> Sauvegarde apres TFJ du 13112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
.
.
et ainsi de suite.
Merci cordiales salutations!
tout mes fichier sont dans le répertoire / mnt / incident / :
/ mnt / incident / liste
/ mnt / incident / groupe1.............................................groupe10
/ mnt / incident / 101.........................................................412
Le travail demandé et de lire toutes les lignes du fichier liste une par une avec une boucle for par example et voir à quel groupe la ligne appartient-elle.
par example: je lis la première ligne du fichier liste qui est 101, je regarde si 101 appartient au fichier groupe1 oui il appartient au groupe1 alors je copie le contenu du fichier 101 dans un nouveau fichier que je vais nommé incident_groupe1 :
* contenu du fichier 101 est :
AGENCE 101
mardi, 13 novembre 2012, 15:44:15 CET
=> Sauvegarde avant TFJ du 13112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
je lis la deuxième ligne du fichier liste qui est 114, je regarde si 114 appartient au fichier groupe1 oui il appartient au groupe1 alors je copie le contenu du fichier 114 dans le fichier incident_groupe1 :
* contenu du fichier 114 est :
AGENCE 114
mardi, 13 novembre 2012, 15:28:46 CET
=> Sauvegarde avant TFJ du 13112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
je lis la troisième ligne du fichier liste qui est 117, je regarde si 117 appartient au fichier groupe1 NON, il appartient au groupe2 alors je copie le contenu du fichier 117 dans un nouveau fichier que je vais nommé incident_groupe2 :
est ainsi de suite pour toutes les ligne lues du fichier liste.
* contenu du fichier 117 est :
AGENCE 117
mardi, 13 novembre 2012, 15:55:16 CET
=> Sauvegarde apres TFJ du 13112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
à ce state le fichier le contenu du fichier incident_groupe1 est :
AGENCE 101
mardi, 13 novembre 2012, 15:44:15 CET
=> Sauvegarde avant TFJ du 13112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 114
mardi, 13 novembre 2012, 15:28:46 CET
=> Sauvegarde avant TFJ du 13112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
.
.
à ce state le fichier le contenu du fichier incident_groupe2 est :
AGENCE 117
mardi, 13 novembre 2012, 15:55:16 CET
=> Sauvegarde apres TFJ du 13112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
.
.
et ainsi de suite.
Merci cordiales salutations!
dubcek
Messages postés
18755
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
14 novembre 2024
5 621
19 nov. 2012 à 08:53
19 nov. 2012 à 08:53
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
dubcek
Messages postés
18755
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
14 novembre 2024
5 621
20 nov. 2012 à 14:39
20 nov. 2012 à 14:39
moi, je veux 1 million de dollars.
debug avec tes données:
debug avec tes données:
for F in $(cat liste); do pour chaque fichier dans liste N=$(grep -l $F groupe*); trouve le fichier groupe qui le contient cat $F >> incident_$N; done ajoute le contenu du fichier à incident_groupe
dubcek
Messages postés
18755
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
14 novembre 2024
5 621
20 nov. 2012 à 15:15
20 nov. 2012 à 15:15
espèces usagées seulement, No qui ne se suivent pas
décrit mieux ce qui ne marche pas
décrit mieux ce qui ne marche pas
bonjour dubcek!
le programme marche avec la boucle for:
for F in $(cat liste); do N=$(grep -l $F groupe*) ; cat $F >> incident_$N; done
il y a juste un petit soucis dans le cas ou j'ai une redondance d'évènements d'une agence avec deux dates différentes
la commande : nawk '$1 ~ /Agence/ {close(f); f=$2; print f > "liste"; next} {print > f}' toto
ne prend pas en charge le cas ou il y'a une agence qui a des évènements à deux date différentes dans le fichier toto
: exemple:
AGENCE 126
lundi, 19 novembre 2012, 15:55:33 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 149
lundi, 19 novembre 2012, 14:50:28 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 155
lundi, 19 novembre 2012, 15:33:21 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 156
lundi, 19 novembre 2012, 15:46:48 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 164
lundi, 19 novembre 2012, 16:45:09 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
lundi, 19 novembre 2012, 16:49:19 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 165
lundi, 19 novembre 2012, 16:11:02 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
lundi, 19 novembre 2012, 16:29:04 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 178
lundi, 19 novembre 2012, 17:11:27 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
lundi, 19 novembre 2012, 17:51:44 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 179
lundi, 19 novembre 2012, 15:53:52 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 196
lundi, 19 novembre 2012, 15:33:08 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 199
lundi, 19 novembre 2012, 16:31:10 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 215
dimanche, 18 novembre 2012, 16:17:15 CET
=> Sauvegarde avant TFJ du 18112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
dimanche, 18 novembre 2012, 16:48:51 CET
=> Sauvegarde apres TFJ du 18112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 215
lundi, 19 novembre 2012, 16:25:02 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
lundi, 19 novembre 2012, 16:58:20 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 308
lundi, 19 novembre 2012, 16:19:45 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 322
lundi, 19 novembre 2012, 15:55:30 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
lundi, 19 novembre 2012, 16:18:58 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 358
lundi, 19 novembre 2012, 15:27:30 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 404
lundi, 19 novembre 2012, 15:57:15 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 422
lundi, 19 novembre 2012, 16:03:54 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 435
lundi, 19 novembre 2012, 15:43:22 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 444
lundi, 19 novembre 2012, 16:32:59 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
en résultat j'ai dans le fichier 215 que le dernier évènement du 19 novembre2012
fichier 215:
AGENCE 215
lundi, 19 novembre 2012, 16:25:02 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
lundi, 19 novembre 2012, 16:58:20 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
dans le contenu du fichier incident_groupe3 :
l'évènement du 19 novembre 2012 est dupliqué en double et l'évènement du 18 novembre n'est pas affiché.
AGENCE 215
lundi, 19 novembre 2012, 16:25:02 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
lundi, 19 novembre 2012, 16:58:20 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 215
lundi, 19 novembre 2012, 16:25:02 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
lundi, 19 novembre 2012, 16:58:20 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
je voudrais afficher le tout c-à-d les évènements des deux dates 18 et 19 novembre dans le fichier incident_groupe3
merci!
cordiales salutations
le programme marche avec la boucle for:
for F in $(cat liste); do N=$(grep -l $F groupe*) ; cat $F >> incident_$N; done
il y a juste un petit soucis dans le cas ou j'ai une redondance d'évènements d'une agence avec deux dates différentes
la commande : nawk '$1 ~ /Agence/ {close(f); f=$2; print f > "liste"; next} {print > f}' toto
ne prend pas en charge le cas ou il y'a une agence qui a des évènements à deux date différentes dans le fichier toto
: exemple:
AGENCE 126
lundi, 19 novembre 2012, 15:55:33 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 149
lundi, 19 novembre 2012, 14:50:28 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 155
lundi, 19 novembre 2012, 15:33:21 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 156
lundi, 19 novembre 2012, 15:46:48 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 164
lundi, 19 novembre 2012, 16:45:09 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
lundi, 19 novembre 2012, 16:49:19 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 165
lundi, 19 novembre 2012, 16:11:02 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
lundi, 19 novembre 2012, 16:29:04 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 178
lundi, 19 novembre 2012, 17:11:27 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
lundi, 19 novembre 2012, 17:51:44 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 179
lundi, 19 novembre 2012, 15:53:52 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 196
lundi, 19 novembre 2012, 15:33:08 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 199
lundi, 19 novembre 2012, 16:31:10 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 215
dimanche, 18 novembre 2012, 16:17:15 CET
=> Sauvegarde avant TFJ du 18112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
dimanche, 18 novembre 2012, 16:48:51 CET
=> Sauvegarde apres TFJ du 18112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 215
lundi, 19 novembre 2012, 16:25:02 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
lundi, 19 novembre 2012, 16:58:20 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 308
lundi, 19 novembre 2012, 16:19:45 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 322
lundi, 19 novembre 2012, 15:55:30 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
lundi, 19 novembre 2012, 16:18:58 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 358
lundi, 19 novembre 2012, 15:27:30 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 404
lundi, 19 novembre 2012, 15:57:15 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 422
lundi, 19 novembre 2012, 16:03:54 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 435
lundi, 19 novembre 2012, 15:43:22 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 444
lundi, 19 novembre 2012, 16:32:59 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
en résultat j'ai dans le fichier 215 que le dernier évènement du 19 novembre2012
fichier 215:
AGENCE 215
lundi, 19 novembre 2012, 16:25:02 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
lundi, 19 novembre 2012, 16:58:20 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
dans le contenu du fichier incident_groupe3 :
l'évènement du 19 novembre 2012 est dupliqué en double et l'évènement du 18 novembre n'est pas affiché.
AGENCE 215
lundi, 19 novembre 2012, 16:25:02 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
lundi, 19 novembre 2012, 16:58:20 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
AGENCE 215
lundi, 19 novembre 2012, 16:25:02 CET
=> Sauvegarde avant TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
lundi, 19 novembre 2012, 16:58:20 CET
=> Sauvegarde apres TFJ du 19112012 sur DAT non faite
=> DAT ou lecteur de DAT hors service
je voudrais afficher le tout c-à-d les évènements des deux dates 18 et 19 novembre dans le fichier incident_groupe3
merci!
cordiales salutations
8 oct. 2012 à 17:19
cordiales salutations!
Modifié par richy le 9/10/2012 à 15:27
un seul fichier
toto:
demande x
action 1......
action 2......
demande y
action 3......
action 4......
action 5......
demande z
action 6.....
action 7......
action 8......
action 9.......
demande t
action 10.....
action 11...
.
.
.
demande n
action n.....
après:
n fichiers ( x, y, z, t,........n)
1 - fichier x
demande x
action 1......
action 2......
2 - fichier y
demande y
action 3......
action 4......
action 5......
.
.
3 - fichier n
demande n
action n
cordiales salutations
9 oct. 2012 à 15:41