/* * Role de ce programme mystere = * Ce programme recopie le contenu du fichier dont le nom est fourni en argv[1] * dans le fichier dont le nom est fourni en argv[2]. */ #include #include #include #include #include #include #include #include int main(int argc, char *argv[]) { int src, dest, rc; struct stat buf; if (argc != 3) { fprintf(stderr, "Usage = mystere nomFichier1 nomFichier2\n"); return EXIT_FAILURE; } src = open(argv[1], O_RDONLY); assert(src >= 0); rc = fstat(src, &buf); assert(rc == 0); dest = open(argv[2], O_WRONLY|O_CREAT|O_TRUNC, buf.st_mode); assert(dest >= 0); rc = sendfile(dest, src, NULL, buf.st_size); assert(rc == buf.st_size); rc = close(src); assert(rc == 0); rc = close(dest); assert(rc == 0); return EXIT_SUCCESS; }