The objective of this project is for you to create a simple shell. Yes, your little bash or zsh. You will learn a lot about processes and file descriptors.
This is a group project done with @adelcor.
The shell must:
- interpret quotes correctly
- expand environment variables, including
$?
- detect syntax errors
- have a prompt with a working history
- execute builtins, such as
echo
,cd
,pwd
,export
,unset
,env
, andexit
- interpret simple and double quotes
- execute redirections (
<
,>
,<<
,>>
) - execute pipes
- Catch
ctrl-C
,ctrl-D
, andctrl-\
signals
Clone the repository and open it
# You might need to run this on MacOs
brew install readline
make
./minishell