Bonjour,

Je voudrais creer un programme similaire a la commande "grep" de unix que je voudrais appeller "newgrep" ou :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
newgrep trucachercher fichier.c
Imprimera tout les resultats dans la console et comptera les lignes trouvees.

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
 
# include <stdio.h>
 
int main ( int argc, char * argv [ ] )
{
  FILE * fp;
  char buffer [ 81 ];
 
  if(argc != 3){
    printf("Usage : newgrep searchstr searchfile [-o outputfile]\n");
   }
 
  else {
    if ((fp = fopen(argv[2],"r")) == NULL) {
      printf ("\n Cannot open file specified.\n");
      exit(1);
     }
 
    while ( fgets ( buffer, 81, fp ) ) {
      fputs ( buffer, stdout );
    }
  }
  return 0;
}
Pour l'instant le code ne fait que lire un fichier et imprimer le resultat dans la console. Je ne sais pas comment modifier :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
    while ( fgets ( buffer, 81, fp ) ) {
      fputs ( buffer, stdout );
    }
De telle maniere a ce que le program interprete argv[1](trucachercher) en tant que chaine de caractere a chercher dans le fichier specifiee...