Return to if_not_there.c CVS log | Up to [local] / OpenXM_contrib2 / asir2000 / gc |
File: [local] / OpenXM_contrib2 / asir2000 / gc / if_not_there.c (download)
Revision 1.4, Wed Jul 24 08:00:09 2002 UTC (22 years, 2 months ago) by noro
Added gc6.1alpha5. |
/* Conditionally execute a command based if the file argv[1] doesn't exist */ /* Except for execvp, we stick to ANSI C. */ # include "private/gcconfig.h" # include <stdio.h> # include <stdlib.h> # include <unistd.h> int main(argc, argv, envp) int argc; char ** argv; char ** envp; { FILE * f; if (argc < 3) goto Usage; if ((f = fopen(argv[1], "rb")) != 0 || (f = fopen(argv[1], "r")) != 0) { fclose(f); return(0); } printf("^^^^Starting command^^^^\n"); fflush(stdout); execvp(argv[2], argv+2); exit(1); Usage: fprintf(stderr, "Usage: %s file_name command\n", argv[0]); return(1); }