Advertisement
Guest User

Untitled

a guest
Mar 25th, 2019
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.92 KB | None | 0 0
  1. //VERSION 1
  2.  
  3. #include<stdio.h>
  4. #include<stdlib.h>
  5. #include<unistd.h>
  6. #include<sys/wait.h>
  7. #include<string.h>
  8.  
  9. #define num_directories 3
  10.  
  11. int main(int argc, char *argv[])
  12. {
  13. char *buffer[num_directories];
  14.  
  15. for (int i=0; i<num_directories; i++) {
  16. printf("Inserisci stringa %d\n",i+1);
  17. scanf("%ms", &buffer[i]);
  18. }
  19.  
  20. int residual_fork = num_directories, status;
  21.  
  22. another_fork:
  23.  
  24. if (fork()>0) {
  25. wait(&status); }
  26. else {
  27. if (residual_fork>0) {
  28. printf("\nChild %d\n",getpid());
  29. execlp("ls","ls",buffer[residual_fork-1],NULL);
  30. residual_fork--;
  31. goto another_fork; }
  32. else {
  33. exit(0); }
  34. }
  35.  
  36. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement