Bonjour à tous,
pour m'entraîner en C, j'essaye de recoder un shell (seulement les bases : les opérateurs binaires, pipe, et certaines builtins du genre cd, ls, echo ...).
Seulement voilà, j'aimerais que mon le code de retour de mon shell corresponde au code retour de la référence (bash).
Pour commencer, j'appelle seulement la fonction execvp.
J'imagine qu'il faut se servir de la variable globale ERRNO avec les fonctions perror() ou bien errno() mais je ne sais pas comment faire.
Par exemple, cette ligne de commande doit renvoyer 127 :
./mon_shell echo 'toto' | une_commande_qui_n-existe_pas
Quelqu'un a-t-il une idée ?
Merci beaucoup![]()
Partager