A miniature clone of bash.
- minishell can run executables from an absolute
/bin/ls, relative../../../../../bin/ls, or environment PATHlswith arguments. - Environment variables are also handled including the return code
$?. - You can use redirections
> >> < <<and pipes|. - Builtins:
cd,pwd,echo,export,unset,env,exit. - Single and double quotes work just like in bash, but not for multiline commands.
- Three signals are also handled just like in bash:
Ctrl-Cinterrupts a running process or brings up a new prompt.Ctrl-\quits from a running program and does nothing on the prompt.Ctrl-Dthrows an EOF or exits minishell.
- Go into the root directory and run
make.
cd minishell
make
- Run the executable created in the output folder.
cd output
./minishell
minishell was a two person project done with yabdelgh
I was responsible for reading input, the lexer, parser, environment variables, signal handling and command history.
While yabdelgh took care of command execution, pipes, redirections and signal handling inside child processes.

