Shell : trouver les lignes mauvaises

mortelrdv -  
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'ai un fichier, appelons le origin.txt, contenant 200000 lignes (60Mo).
Dans ce fichier, il y a des lignes 'mauvaises' et des lignes 'bonnes'.
Je sais à quoi ressemble les lignes 'bonnes' (car il suit un modele), mais je ne sais à quoi ressemble les lignes 'mauvaises' (hors modele)

Le but est donc de trouver les lignes 'mauvaises' du fichier origin.txt soit en supprimant les lignes 'bonnes' du fichier soit en affichant les lignes 'mauvaises'.


soit les variables contenant une chaine de caracteres:
toto1, toto2, tata1, tata2, titi1, titi2

les lignes bonnes doivent forcément contenir :
   toto1 et toto2  
ou tata1 et tata2  
ou titi1 et titi2
ou ...(en faite j'ai une vingtaine de variable)



avez vous une idée de comment résoudre ce probleme ?

Merci
A voir également:

5 réponses

jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896
 
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Salut,


Je sais à quoi ressemble les lignes 'bonnes' (car il suit un modele),

C'est bien, mais moi je ne sais pas à quoi rassemble ce modèle.

Sinon, supposons que le modèle est le mot bon.
Voici comment faire pour afficher que les mauvaises
lami20j@debian-acer:~$ cat mauvaisbon  
bon 
mauvais 
mauvais 
bon 
mauvais 
lami20j@debian-acer:~$ grep -v bon mauvaisbon  
mauvais 
mauvais 
mauvais 
lami20j@debian-acer:~$  


GNU/Linux:Linux is Not Ubuntu! Quel linux choisir ne veut pas dire votre Distribution préférée,
106485010510997108
0
mortelrdv
 
jipicy : ça c'est pour trouver une ligne donc je connais déjà 'un bout'

lami20j : ça aurait été trop simple ;-)

prenons un exemple de texte au hasard:
Alors celui-ci est encore plus rare il me semble, tellement rare que les d?veloppeurs ont
oubli? de changer sa description, qui est la m?me que celle du Bouclier de Duncan, ainsi que les stats.
Mais son apparance est diff?rente, c'est celle du symbole des garde des ombres avec les 2 Griffon confront?
Dos a Dos, que je pr?f?re au bouclier de Duncan pour ma part.
Il est accessible tr?s t?t en plus, et il fait partie du 3?me meilleure bouclier du jeu avec celui de Duncan
vu qu'ils ont les m?me stats, et est pr?f?rable a celui de Howe par exemple si vous n'aimez pas son
-2 volont? (qui perso, ne me d?range pas plus que ?a =p)
Comme vous l'aurez devinez, celle qui le fait tomber, en plus du Set l'Armure
du Commandeur, c'est Sophya Dryden du DLC Pic Du Soldats.
Et comme avec Gaxkang, SAUVEGARDER avant d'engager le combat avec elle, si vous ne l'avez pas sur son cadavre,
rechargez et ainsi de suite jusqu'a l'obtenir. Il faut 38 en force pour le portez mais vu que vohhus pouvez l'avoir
tr?s t?tqdhsdgg dans le jeu (d?s que vous sortez desdqgsdgsdg Lothering par exemple), c'estfghfgh tout b?n?f
Alors cesdgqsgdlui-ci est encore plus rare il me semble, tellement rare que les d?veloppeufghfghrs ont
oubli?dsgqsg de changer sa description, qui est la m?me que celle du Bouclier de Duncan, ainsi qfghfghue les stats.
Mais son appardsgsdgance est diff?rente, c'est celle du symbole des garde des ombres avec les 2 Grifghfghffon confront?
Dos a Dos, qudsgsge je pr?f?re au bouclier de Duncan pour ma fghfghpart.
Il est accesssdgqsdgible tr?s t?t en plus, et il fait partie du 3?me meilleure bouclier du jeu fghfghavec celui de Duncan
vu qusdgsdg'ils ont les m?me stats, et est pr?f?rable a celui de Howe par exemplefghfgh si vous n'aimez pas son
-2 vsdgsdgolont? (qui perso, ne me d?range pas plus que ?agfhf =p)
Commsdgsdge vous l'aurez devinez, celle qui le fait tomber, en plus du Set lgfhfgh'Armure
du Cosdgsdgmmandeur, c'est Sophya Dryden du DLC Pic Du Soldats.
Et comsdgdsgme avec Gaxkang, SAUVEGARDER avant d'engager le combat avec elle, sigfhfgh vous ne l'avez pas sur son cadavre,
rechargezdsgdsg et ainsi de suite jusqu'a l'obtenir. Il faut 38 en force pour le pfghfghortez mais vu que vous pouvez l'avoir
tr?s t?t dans le dsgdgjeu (d?s que vous sortez de Lothering par exemple), c'estfghdfgh tout b?n?f


disons que les lignes bonnes doivent contenir :
   toto1="est encore plus" et toto2="rare que"
ou tata1="exemp" et tata2="c'estfghfgh tout"
ou titi1="ainsi de suite" et titi2="hortez mais vu que"


je dois avoir comme resultat :
oubli? de changer sa description, qui est la m?me que celle du Bouclier de Duncan, ainsi que les stats.
Mais son apparance est diff?rente, c'est celle du symbole des garde des ombres avec les 2 Griffon confront?
Dos a Dos, que je pr?f?re au bouclier de Duncan pour ma part.
Il est accessible tr?s t?t en plus, et il fait partie du 3?me meilleure bouclier du jeu avec celui de Duncan
vu qu'ils ont les m?me stats, et est pr?f?rable a celui de Howe par exemple si vous n'aimez pas son
-2 volont? (qui perso, ne me d?range pas plus que ?a =p)
Comme vous l'aurez devinez, celle qui le fait tomber, en plus du Set l'Armure
du Commandeur, c'est Sophya Dryden du DLC Pic Du Soldats.
Et comme avec Gaxkang, SAUVEGARDER avant d'engager le combat avec elle, si vous ne l'avez pas sur son cadavre,
rechargez et ainsi de suite jusqu'a l'obtenir. Il faut 38 en force pour le portez mais vu que vohhus pouvez l'avoir
oubli?dsgqsg de changer sa description, qui est la m?me que celle du Bouclier de Duncan, ainsi qfghfghue les stats.
Mais son appardsgsdgance est diff?rente, c'est celle du symbole des garde des ombres avec les 2 Grifghfghffon confront?
Dos a Dos, qudsgsge je pr?f?re au bouclier de Duncan pour ma fghfghpart.
Il est accesssdgqsdgible tr?s t?t en plus, et il fait partie du 3?me meilleure bouclier du jeu fghfghavec celui de Duncan
vu qusdgsdg'ils ont les m?me stats, et est pr?f?rable a celui de Howe par exemplefghfgh si vous n'aimez pas son
-2 vsdgsdgolont? (qui perso, ne me d?range pas plus que ?agfhf =p)
Commsdgsdge vous l'aurez devinez, celle qui le fait tomber, en plus du Set lgfhfgh'Armure
du Cosdgsdgmmandeur, c'est Sophya Dryden du DLC Pic Du Soldats.
Et comsdgdsgme avec Gaxkang, SAUVEGARDER avant d'engager le combat avec elle, sigfhfgh vous ne l'avez pas sur son cadavre,
tr?s t?t dans le dsgdgjeu (d?s que vous sortez de Lothering par exemple), c'estfghdfgh tout b?n?f
0
mortelrdv
 
c'est pas possible mais ça devrait faire que que chose du genre :
cat origin.txt | grep -v 'toto1 ET toto2' | grep -v 'tata1 ET tata2' | grep -v 'titi1 ET titi2'

en plus comme j'ai beaucoup de criteres il me faudrait une quarantaine de pipe grep !!!!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
hello
essaye
$ cat f1  
#!/bin/bash  

toto1="est encore plus" ; toto2="rare que"  
tata1="exemp" ; tata2="c'estfghfgh tout"  
titi1="ainsi de suite" ; titi2="hortez mais vu que"  

(cat << XX ; cat a1 ) | awk '$1 ~ /^EOFEOF$/ {x=1;next} ; !x {p[n++]=$0}; x {f=0;for(l=0;l<n;l+=2)if($0 ~ p[l] && $0 ~ p[l+1])f++ ; if(!f) print}' 
$toto1  
$toto2  
$tata1  
$tata2  
$titi1  
$titi2  
EOFEOF  
XX  
$   
$ ./f1 | head -5  
oubli? de changer sa description, qui est la m?me que celle du Bouclier de Duncan, ainsi que les stats.  
Mais son apparance est diff?rente, c'est celle du symbole des garde des ombres avec les 2 Griffon confront?  
Dos a Dos, que je pr?f?re au bouclier de Duncan pour ma part.  
Il est accessible tr?s t?t en plus, et il fait partie du 3?me meilleure bouclier du jeu avec celui de Duncan  
-2 volont? (qui perso, ne me d?range pas plus que ?a =p)  
$   
0