J'ai voulu improviser pour l'instertion de la chaine ...
Voila comment je m'y prends ... pouvez m'eexpliquer pkoi ça ne marche pas ... ?
le .c:
void read(char *fichier)
{
FILE *fic;
char temp[32];
int i;
fic = fopen("D:\\tables.txt","r" );
if(fic != NULL)
{
i=0;
while(!feof(fic))
{
fscanf(fic, "%s", temp);
tables[i]=malloc(sizeof(temp));
strcpy(tables[i],temp);
i++;
}
fclose(fic);
}
else printf("le fichier %s n'a pas pu etre ouvert",input_f);
FILE *sortie;
int j;
char *cmd;
sortie = fopen("greptables.bat","a" );
if(sortie != NULL)
{
for(j=0;j<i;j++)
{
cmd = insert(tables[j]);
fputs(cmd, sortie);
}
fclose(sortie);
free(tables);
}
}
char *insert(char *table)
{
char *cmd_dbt;
char *cmd_fin;
char *cmd;
char *cmd1;
char *cmd2;
cmd_dbt = "grep -i -l -c ";
cmd_fin = " *.* >> ";
cmd1=(strcat(cmd_dbt,table));
cmd2=(strcat(cmd1,cmd_fin));
cmd=(strcat(cmd2,"resultGrep.txt\n" ));
return(cmd);
}
Comme vous pouvez le voir ( dumoins j'espere ) j'essaye de creer un fichier dans lequel chauqe ligne est une commande ou j'ai inséré une variable ( tables ).
je voudrais obtenir :
grep -i -l -c AAA *.* >> greptables.bat
grep -i -l -c AAB *.* >> greptables.bat
grep -i -l -c AAC *.* >> greptables.bat
grep -i -l -c AAD *.* >> greptables.bat
grep -i -l -c AEG *.* >> greptables.bat
grep -i -l -c AFM *.* >> greptables.bat
sachant que tables.txt est composé de :
AAA
AAB
AAC
AAD
AEG
AFM
Qu'est ce qui ne va pas .... voilà ce que j'obtiens avec le code actuel :
grep -i -l -c AAA *.* >> resultGrep.txt
grep -i -l -c AAA *.* >> resultGrep.txt
AAB *.* >> resultGrep.txt
grep -i -l -c AAA *.* >> resultGrep.txt
AAB *.* >> resultGrep.txt
AAC *.* >> resultGrep.txt
grep -i -l -c AAA *.* >> resultGrep.txt
AAB *.* >> resultGrep.txt
AAC *.* >> resultGrep.txt
AAD *.* >> resultGrep.txt
grep -i -l -c AAA *.* >> resultGrep.txt
AAB *.* >> resultGrep.txt
AAC *.* >> resultGrep.txt
AAD *.* >> resultGrep.txt
AEG *.* >> resultGrep.txt
grep -i -l -c AAA *.* >> resultGrep.txt
AAB *.* >> resultGrep.txt
AAC *.* >> resultGrep.txt
AAD *.* >> resultGrep.txt
AEG *.* >> resultGrep.txt
AFM *.* >> resultGrep.txt
grep -i -l -c AAA *.* >> resultGrep.txt
AAB *.* >> resultGrep.txt
AAC *.* >> resultGrep.txt
AAD *.* >> resultGrep.txt
AEG *.* >> resultGrep.txt
AFM *.* >> resultGrep.txt
AFM *.* >> resultGrep.txt
c un peu long je sais ...
Merci