/* * less-simple-exec.c */ #include #include #include #include #include #include int main(int argc, char *argv[]) { int fd; pid_t my_process_id; char s[40]; char *args[2] = { "./write-to-fd3", NULL }; my_process_id = getpid(); snprintf(s, 40, "Hello from process %d\n", my_process_id); fd = open("output-file", O_CREAT | O_WRONLY, 0666); write(fd, s, strlen(s)); execv("./write-to-fd3", args); close(fd); }