From ef3aefe8761c2154cee0a3ed024a5bb4ea6fe9bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Laure=CE=B7t?= Date: Mon, 10 May 2021 16:08:04 +0200 Subject: [PATCH] file_in file_out --- minishell | Bin 0 -> 34016 bytes minishell.c | 19 +++++++++++++++++-- 2 files changed, 17 insertions(+), 2 deletions(-) create mode 100755 minishell diff --git a/minishell b/minishell new file mode 100755 index 0000000000000000000000000000000000000000..839a7712b26b0e6631cbb47cc54939fc86f90c94 GIT binary patch literal 34016 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 literal 0 HcmV?d00001 diff --git a/minishell.c b/minishell.c index 49c8400..bc06a03 100644 --- a/minishell.c +++ b/minishell.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include "readcmd.h" @@ -24,6 +25,8 @@ jmp_buf goto_prompt; char initcd[256], currentcd[256]; +int file_in, file_out; + void handler_sigchld(int sig_num) { do @@ -227,8 +230,20 @@ int main(int argc, char *argv[]) sigaction(SIGTSTP, &action, NULL); // on igonre SIGTSTP sigaction(SIGINT, &action, NULL); // on ignore SIGINT + if (cmd->in) + { + file_in = open(cmd->in, O_RDONLY); + dup2(file_in, 0); + } + if (cmd->out) + { + file_out = open(cmd->out, O_CREAT | O_TRUNC | O_WRONLY, 0640); + dup2(file_out, 1); + } + execvp(cmd->seq[0][0], cmd->seq[0]); - exit(errno); // si execlp échoue on exit avec une erreur + fprintf(stderr, "ERROR: execvp failed, (%d) %s\n", errno, strerror(errno)); + exit(errno); // si execvp échoue on exit avec une erreur } else { // instructions du père @@ -249,7 +264,7 @@ int main(int argc, char *argv[]) if (wait_code) { // execvp fail ? - fprintf(stderr, "ERROR: command failed, (%d) %s\n", wait_code, strerror(wait_code)); + fprintf(stderr, "ERROR: child failed, (%d) %s\n", wait_code, strerror(wait_code)); } } }