Bonjour a tous,
j'ai un petit soucis avec un programme.
mon programme dois pouvoir executer des commandes avec execvp et si il y a des pipe les executé
voila mon code
Mon code n'est pas dinamique.
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 #include <stdio.h> #include <unistd.h> #include <fcntl.h> #include <sys/types.h> #include <sys/stat.h> int main(int argc, char **argv) { int pipefd[2]; int pid; char *ls[] = {"ls", "-al", NULL}; char *cat[] = {"cat", "-e", NULL}; pipe(pipefd); pid = fork(); if (pid == 0) { dup2(pipefd[0], 0); close(pipefd[1]); execvp(cat[0], cat); } else { dup2(pipefd[1], 1); close(pipefd[0]); execvp(ls[0], ls); } }
Comment je peux faire pour par exemple rajouté un 2eme pipe ?
merci d'avance
Partager