Poster une réponse à un sujet: [C] Parser (BCP) de fichier
Attention, ce sujet est un sujet ancien (5734 jours sans réponse)
blietaer
une fois de plus...merci bcp...
blietaer
oui, c'est exactement cela.
mmmh je vais man 3 glob...
mmmh je vais man 3 glob...
philfr
Tu veux lancer "cat <pattern>" depuis un fork/exec, c'est ça ?
Pourquoi ne pas utiliser system(3) ?
Sinon, glob(3) peut convertir ton pattern en argv à passer dans execv.
Pourquoi ne pas utiliser system(3) ?
Sinon, glob(3) peut convertir ton pattern en argv à passer dans execv.
blietaer
Bonjour,
Nouvelle petite question :
Dans une application pure-C, je dois parser une 50aine de fichier de logs-proprio. (un total de +/- 250.000lignes) et puis faire des stats.
J'ai déjà les fonctions d'appel système qui me permettent de fork(), puis execvp() et donc je peux passer n'importe qu'elle commande. Enfin, j'ai aussi à ma disposition une petite routine maison qui peut avaler des lignes et les regexper pour en sortir des token.
Tout cela marchait très bien quand je n'avais qu'un fichier à lire ...
Maintenant je voudrais faire un petit:
cat /mes-files-2008-12-*
et c'est bien sûr le "*" qui coince puisque c'est un wildcard BASH (qui s'occupe de l'ouvrir et de remplacer les args _avant_ l'appel de cat...
C'est là qu'est l'os.
Il y a aussi bien sûr des scandir() etc.. mais ils sont EXT3/4-spécifiques pour la plupart et je trouve cela trop limitant...
Des idées?
Nouvelle petite question :
Dans une application pure-C, je dois parser une 50aine de fichier de logs-proprio. (un total de +/- 250.000lignes) et puis faire des stats.
J'ai déjà les fonctions d'appel système qui me permettent de fork(), puis execvp() et donc je peux passer n'importe qu'elle commande. Enfin, j'ai aussi à ma disposition une petite routine maison qui peut avaler des lignes et les regexper pour en sortir des token.
Tout cela marchait très bien quand je n'avais qu'un fichier à lire ...
Maintenant je voudrais faire un petit:
cat /mes-files-2008-12-*
et c'est bien sûr le "*" qui coince puisque c'est un wildcard BASH (qui s'occupe de l'ouvrir et de remplacer les args _avant_ l'appel de cat...
C'est là qu'est l'os.
Il y a aussi bien sûr des scandir() etc.. mais ils sont EXT3/4-spécifiques pour la plupart et je trouve cela trop limitant...
Des idées?