Tous les projets
Minishell
Shell UNIX — processus, pipes, redirections, signaux
Interpréteur de commandes écrit en C : création de processus, chaînage par pipes, redirections, variables d'environnement et gestion des signaux.
Captures
Contexte
Un shell est un excellent révélateur : il oblige à comprendre `fork`, `execve`, `dup2` et `waitpid` pour de vrai, et surtout à gérer les cas limites — une redirection qui échoue, un signal reçu pendant l'exécution d'un enfant, une commande introuvable au milieu d'un pipeline. Le parsing a demandé autant de travail que l'exécution : quotes, expansions et opérateurs doivent être traités dans le bon ordre pour que le comportement reste conforme à celui de bash.
Fonctionnalités
- Interpréteur de commandes UNIX complet
- Gestion des pipes et des redirections
- Variables d'environnement et signaux
- Built-ins : echo, cd, pwd, export, unset, env, exit
- Historique des commandes
- Parsing robuste avec gestion d'erreurs