faboussard / 42_minishell

1 stars 0 forks source link

si ls|ls|ls : seule la la derniere commande semble etre executee dans la sortie standard. actuellement, sont toutes executees. #49

Closed faboussard closed 5 months ago

faboussard commented 5 months ago

ls -a|ls -l affiche bien le résultat de la commande ls -l seulement. Cela se produit parce que la commande ls -l est exécutée en second et remplace la sortie de la commande ls -a qui est la première dans le pipeline. autre exemple : 07:01:11 juba@juba-desktop ~ → ls<ls bash: ls: No such file or directory

melobern commented 5 months ago

Je ne vois que la derniere executée. Le seul soucis que je vois est que l'exec recoit ls|ls|ls comme une seule commande au lieu de recevoir ls | ls | ls quand on colle tout.

MODE INTERACTIF

LS -A | LS -L

>>>  Minishell>$ ls -a | ls -l
total 108
drwxrwxr-x 3 melodie melodie  4096 avril 20 09:41 build
-rw-rw-r-- 1 melodie melodie  3823 avril 20 09:41 CMakeLists.txt
-rw-rw-r-- 1 melodie melodie   126 avril  8 13:10 ignore_leaks.supp
drwxrwxr-x 2 melodie melodie  4096 avril 20 09:41 includes
-rw-rw-r-- 1 melodie melodie   878 avril  8 13:10 info.txt
drwxrwxr-x 5 melodie melodie  4096 avril 20 09:41 libft
-rw-rw-r-- 1 melodie melodie  2813 avril 20 09:41 Makefile
-rwxrwxr-x 1 melodie melodie 58376 avril 15 14:38 minishell
drwxrwxr-x 2 melodie melodie  4096 avril 20 09:41 minitester-minishell-tester
-rw-rw-r-- 1 melodie melodie  1521 avril  8 13:10 questions
drwxrwxr-x 9 melodie melodie  4096 avril 20 09:41 srcs
-rw-rw-r-- 1 melodie melodie  4641 avril 20 09:41 tests.txt

LS -A

>>>  Minishell>$ ls -a
.   build       .github      .idea      info.txt  minishell            srcs
..  CMakeLists.txt  .gitignore   ignore_leaks.supp  libft     minitester-minishell-tester  tests.txt
.build  .git        .gitmodules  includes       Makefile  questions            .vscode

LS -L

>>>  Minishell>$ ls -l
total 108
drwxrwxr-x 3 melodie melodie  4096 avril 20 09:41 build
-rw-rw-r-- 1 melodie melodie  3823 avril 20 09:41 CMakeLists.txt
-rw-rw-r-- 1 melodie melodie   126 avril  8 13:10 ignore_leaks.supp
drwxrwxr-x 2 melodie melodie  4096 avril 20 09:41 includes
-rw-rw-r-- 1 melodie melodie   878 avril  8 13:10 info.txt
drwxrwxr-x 5 melodie melodie  4096 avril 20 09:41 libft
-rw-rw-r-- 1 melodie melodie  2813 avril 20 09:41 Makefile
-rwxrwxr-x 1 melodie melodie 58376 avril 15 14:38 minishell
drwxrwxr-x 2 melodie melodie  4096 avril 20 09:41 minitester-minishell-tester
-rw-rw-r-- 1 melodie melodie  1521 avril  8 13:10 questions
drwxrwxr-x 9 melodie melodie  4096 avril 20 09:41 srcs
-rw-rw-r-- 1 melodie melodie  4641 avril 20 09:41 tests.txt

LS|LS|LS et LS | LS | LS

>>>  Minishell>$ ls|ls|ls
minishell: ls|ls|ls: No such file or directory
>>>  Minishell>$ ls | ls | ls
build       ignore_leaks.supp  info.txt  Makefile   minitester-minishell-tester  srcs
CMakeLists.txt  includes       libft     minishell  questions            tests.txt

LS<LS

>>>  Minishell>$ ls<ls
minishell: ls<ls: No such file or directory

MODE NON INTERACTIF

LS -A | LS -L

➜  42_minishell.c git:(builtins) ./minishell -c "ls -a | ls -l"
total 108
drwxrwxr-x 3 melodie melodie  4096 avril 20 09:41 build
-rw-rw-r-- 1 melodie melodie  3823 avril 20 09:41 CMakeLists.txt
-rw-rw-r-- 1 melodie melodie   126 avril  8 13:10 ignore_leaks.supp
drwxrwxr-x 2 melodie melodie  4096 avril 20 09:41 includes
-rw-rw-r-- 1 melodie melodie   878 avril  8 13:10 info.txt
drwxrwxr-x 5 melodie melodie  4096 avril 20 09:41 libft
-rw-rw-r-- 1 melodie melodie  2813 avril 20 09:41 Makefile
-rwxrwxr-x 1 melodie melodie 58376 avril 15 14:38 minishell
drwxrwxr-x 2 melodie melodie  4096 avril 20 09:41 minitester-minishell-tester
-rw-rw-r-- 1 melodie melodie  1521 avril  8 13:10 questions
drwxrwxr-x 9 melodie melodie  4096 avril 20 09:41 srcs
-rw-rw-r-- 1 melodie melodie  4641 avril 20 09:41 tests.txt

LS|LS|LS et LS | LS | LS

➜  42_minishell.c git:(builtins) ./minishell -c "ls|ls|ls" 
minishell: ls|ls|ls: No such file or directory
➜  42_minishell.c git:(builtins) ./minishell -c "ls | ls | ls"
build       ignore_leaks.supp  info.txt  Makefile   minitester-minishell-tester  srcs
CMakeLists.txt  includes       libft     minishell  questions            tests.txt

LS<LS

➜  42_minishell.c git:(parsing) ./minishell -c "ls<ls"      
minishell: ls<ls: No such file or directory