Bonjour,

J'aime savoir si c'est possible et comment faire une recursive avec le bout de code suivant svp

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
#include "../my.h"
 
int     main()
{
  int   pipefd[2];
  int   pid;
 
  xpipe(pipefd);
  pid = xfork();
  if (pid == 0)
    {
      xclose(pipefd[0]);
      xdup2(pipefd[1], 1);
      execlp("/bin/ls", "ls", "-la",  0);
    }
  else
    {
      xclose(pipefd[1]);
      xdup2(pipefd[0], 0);
      xpipe(pipefd);
      pid = xfork();
      if (pid == 0)
        {
          xclose(pipefd[0]);
          xdup2(pipefd[1], 1);
          execlp("/bin/cat", "cat", "-e", 0);
        }
      else
        {
          xclose(pipefd[1]);
          xdup2(pipefd[0], 0);
          xpipe(pipefd);
          pid = xfork();
          if (pid == 0)
            {
              xclose(pipefd[0]);
              xdup2(pipefd[1], 1);
              execlp("/bin/grep", "grep", "test", 0);
            }
          else
            {
              xclose(pipefd[1]);
              xdup2(pipefd[0], 0);
              execlp("/bin/cat", "cat", "-b", 0);
            }
        }
    }
  return (EXIT_SUCCESS);
}