#1 Le 21/01/2008, à 15:04
- Nicorider
[Résolu]Code source de la commande cat
Bonjour ;
Je cherche le code source de la commande cat (pour concaténer : réaliser une suite).
J'ai essayer de la réaliser moi même mais je ne suis pas un super programmeur.
Je sais qu'il faut commencer par :
#include <stdio.h>
int main (int argc, char * argv[])
{
return (0);
}
Dernière modification par Nicorider (Le 21/01/2008, à 15:57)
Distribution : Ubuntu Hardy Heron 8.04
GNU/linux with 1391402 :).
Hors ligne
#2 Le 21/01/2008, à 15:11
- iuchiban
Re : [Résolu]Code source de la commande cat
http://www.gnu.org/order/ftp.html
Essaye de voir par là bas.
Sinon, très bon départ.
En gros tu fais :
- pour tous les fichiers passés en paramètre
- ouvrir le fichier
- afficher le fichier ligne par ligne
- fermer le fichier
Va voir sur le site du zéro pour la programmation.
C'est depuis que Chuck Norris a laissé la vie sauve à un manchot que l'on dit que Linux est libre.
Chuck Norris n'a pas besoin d'éditer son premier message pour ajouter [Résolu]. Chuck Norris est toujours [Résolu], quoi qu'il arrive.
Hors ligne
#3 Le 21/01/2008, à 15:18
- Nicorider
Re : [Résolu]Code source de la commande cat
Dans un livre (K&R) je suis tombé sur ça :
#include <stdio.h>
/* cat : concatène des fichiers, version 1 */
main(int argc, char *argv[])
{
FILE *fp;
void copierfich(FILE *, FILE *);
if (argc == 1) /* pas d'args : copie l'entrée standard */
copierfich(stdin, stdout);
else
while (--argc > 0)
if ((fp = fopen(*++argv, "r")) == NULL) {
printf("cat : impossible d'ouvrir %s\n", *argv);
return 1;
} else {
copierfich(fp, stdout);
fclose(fp);
}
return 0;
}
/* copierfich : copie le fichier fpe dans le fichier fps */
void copierfich(FILE *fpe, FILE *fps)
{
int c;
while ((c = getc(fpe)) != EOF)
putc(c, fps);
}
J'ai tout taper dans un fichier que j'ai appelé cat.txt puis j'ai taper la commande :
gcc -o cat.c cat2
il ne me mets pas d'erreur
lorsque je tape cat2 cat.c /* pour afficher le contenu du fichier cat.c */
il me mets comme message :
~/Desktop$ cat2 cat.c
bash: cat2 : commande introuvable
Dernière modification par Nicorider (Le 21/01/2008, à 16:04)
Distribution : Ubuntu Hardy Heron 8.04
GNU/linux with 1391402 :).
Hors ligne
#4 Le 21/01/2008, à 15:42
- Karl_le_rouge
Re : [Résolu]Code source de la commande cat
J'ai tout taper dans un fichier que j'ai appelé cat.txt puis j'ai taper la commande :
=> cat.c
gcc -o cat.c cat2
ZOMG
=> $ gcc cat.c -o cat2
~/Desktop$ cat2 cat.c
bash: cat2 : commande introuvable
=> $ ./cat2 cat.c
Normalement, ça devrait aller mieux. Tu me reliras 5 fois le K&R et 10 fois "The Practice Of Programming"
Hors ligne
#5 Le 21/01/2008, à 15:56
- Nicorider
Re : [Résolu]Code source de la commande cat
Merci (il faut m'excuser, je me suis coucher tard hier soir).
Distribution : Ubuntu Hardy Heron 8.04
GNU/linux with 1391402 :).
Hors ligne