cmde grep en language C

cmde grep en language C - C - Programmation

Marsh Posté le 04-12-2005 à 22:55:20    

Bonjour  
 
Je voudrais un programme en C qui est identique a la commande GREP de LINUX
 
Notre projet doit permettre d'effectuer des recherches de caractéristiques dans les lignes d'un ou plusieurs FICHIERS TEXTES passés en paramètres.
-Si le fichier n'est pas un fichier texte, on doit seulement indiquer s'il y a au moins une correspondance ou s'il n'y en a pas dans le fichier en question.
-si le fichier ne contient aucun caractère nul, chaque correspondance est affichée sur la sortie standard
- si aucun nom de fichier n'est donné, mongrep lira ses données sur l'entrée standard.
 
Fonctionnalités de base :
 
motifs acceptés par mongrep : chaines de caractères
caractères spéciaux : ^motif : chaine vide en début de ligne
        motif$ : chaine vide en fin de ligne
                      ^motif$ = lignes ne contenant que le motif
        \< = chaine vide en début de motif
        \> = chaine vide en fin de mot
         
 
Notre sujet se borne à traiter une dizaine d'options de cette commande :
 
- num   Affiche les num lignes se trouvant avant et après la correspondance dans le fichier
-Anum Affiche les num lignes se trouvant AVANT la correspondance dans le fichier
-Bnum Affiche les num lignes se trouvant APRES la correspondance dans le fichier
-bo Préfixer chaque ligne par sa position en octets depuis le début de fichier
-bn Préfixer chaque ligne par sa position en lignes depuis le début de fichier
-c ne pas affciher les lignes selectionnées mais afficher le nombre de ligne de corespondance pour chaque fichier d'entrée et avec l'option  
        -v affciher le nombre de ligne qui ne correspondent pas au motif
 
-h      ne pas afficher les noms des fichiers dans les résultats quand plusieurs fichiers sont parcourus
-i ignorer les différences majuscule/miniscule dans le motif comme dans les fichiers d'entrée
-L ne pas afficher les correspondances mais seulement les noms de fichiers ne contenant aucune correspondance
-l ne pas afficher les correspondances mais seulement les noms de fichiers contenant au moins une correspondance
-n prefixer chaque ligne de sortie par son num dans le fichier d'entrée
-s ne pas afficher les mesgs d'erreur concernant les fics inexistants ou illisibles
-v inverser la mise en correspondance : selection des lignes ne correspondant pas au motif
 
-e motif  utiliser le motif indiqué; cette option permet d'utiliser des motifs commencant par -, et de spécifier plusieurs motifs
 
 
 
En plus de ça, on doit programmer deux options supplémentaires de notre choix.  
De plus l'implémentation d'au moins deux parmi l'ensemble des options doit etre réalisée au moyen de "listes chainées"
(hors eventuel chargement des fics en memoire).
 
 
 
merci a tous ceux qui nous répondront......

Message cité 1 fois
Message édité par AN_morgan le 05-12-2005 à 19:26:11
Reply

Marsh Posté le 04-12-2005 à 22:55:20   

Reply

Marsh Posté le 04-12-2005 à 22:57:21    

Reply

Marsh Posté le 04-12-2005 à 23:02:09    

AN_morgan a écrit :

Je voudrais un programme en C qui est identique a la commande wc.


Tu as oublié de poster le code qui ne fonctionne pas...
 
Essaye çà :  


#include <stdio.h>
int main (void)
{
   FILE *toilets = stdout;
   fflush (toilets);
 
   return 0;
}


Message édité par Emmanuel Delahaye le 05-12-2005 à 08:35:22

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 04-12-2005 à 23:03:48    

[:le kneu] [:oxygene] [:palpatine]

Reply

Marsh Posté le 04-12-2005 à 23:04:40    

stout con a faire, fait un mapping en mémoire pour pas te faire chier avec les IO et zou

Reply

Marsh Posté le 04-12-2005 à 23:14:21    

regex.h
 
De rien.
 
 
(EDIT : ou system("grep ..." )  [:mustang]  )


Message édité par Elmoricq le 04-12-2005 à 23:19:11
Reply

Marsh Posté le 05-12-2005 à 10:09:43    

pcre

Reply

Marsh Posté le 05-12-2005 à 10:12:32    

Ah ouais, carrément, coder les PCRE en C... trop du bonheur en perspective [:petrus75]
(enfin y a peut-être une bibliothèque quelque part qui le fait, remarque)


Message édité par Elmoricq le 05-12-2005 à 10:13:23
Reply

Marsh Posté le 05-12-2005 à 10:29:28    

ah oui.
 
bon ben c'est tout le tsoin-tsoin de compilation, automate, etc. Bonne bourre.

Reply

Marsh Posté le 05-12-2005 à 19:31:45    

0x90 a écrit :

Et c'est rémunéré ?


 
excuz pour tout le monde pask on sé gourré ds notr post (je ve dire le premier ) c la commande GREP de LINUX  kon veut programmer en C ....essayez de relire notre premier edit  :)....sa doit etre comprehensible pour la plupart mtnt k c corrigé  
 
c bien marrant ce k vs avez posté mais on aimerait bien avoir une reponse plus concrete (pour pouvoir coder ) :jap:  
 
bizous a ts  :)  

Reply

Marsh Posté le 05-12-2005 à 19:31:45   

Reply

Marsh Posté le 05-12-2005 à 19:44:36    

AN_morgan a écrit :

excuz pour tout le monde pask on sé gourré ds notr post (je ve dire le premier ) c la commande GREP de LINUX  kon veut programmer en C ....essayez de relire notre premier edit  :)....sa doit etre comprehensible pour la plupart mtnt k c corrigé  
 
c bien marrant ce k vs avez posté mais on aimerait bien avoir une reponse plus concrete (pour pouvoir coder ) :jap:  
 
bizous a ts  :)


c'est bizarre , il manque tout un tas de lettres et de mots dans ton post  :??:  
surement un bug de HFR...
 
ps : t'as mal interprété les precedent posts... , mais tu vas vite comprendre  :hello:

Reply

Marsh Posté le 05-12-2005 à 20:04:24    

Quelle est ta question sur la programmation?

Reply

Marsh Posté le 05-12-2005 à 22:05:03    

AN_morgan a écrit :

excuz pour tout le monde pask on sé gourré ds notr post (je ve dire le premier ) c la commande GREP de LINUX  kon veut programmer en C ....essayez de relire notre premier edit  :)....sa doit etre comprehensible pour la plupart mtnt k c corrigé  
 
c bien marrant ce k vs avez posté mais on aimerait bien avoir une reponse plus concrete (pour pouvoir coder ) :jap:  
 
bizous a ts


Commence déjà par lire les regles du forum et par écrire dans un français lisible....


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 05-12-2005 à 22:17:29    

AN_morgan a écrit :

excuz pour tout le monde pask on sé gourré ds notr post (je ve dire le premier ) c la commande GREP de LINUX  kon veut programmer en C ....essayez de relire notre premier edit  :)....sa doit etre comprehensible pour la plupart mtnt k c corrigé  
 
c bien marrant ce k vs avez posté mais on aimerait bien avoir une reponse plus concrete (pour pouvoir coder ) :jap:  
 
bizous a ts  :)


illisible
merci d'écrire correctement, sinon je ferme


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 05-12-2005 à 22:19:38    

Nan mais Harko, tu as lu le sujet, en fait ? [:pingouino]

Reply

Marsh Posté le 05-12-2005 à 22:33:28    

ah oui, un TP
bon ben, meme punition : close + TT 1 semaine [:pingouino]


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed