A bash-like Unix shell written in C
- Dynamic prompt
- History
- PATH handling
- Environment variables setting and expanding
- Getting exit code with
$? - String literal support (
',") - Bash-like syntax
- Pipes
- IO redirections (
>,<,>>) - Heredoc (
<< EOF) - Builtins:
echo [-n]cd [-]pwdexportunsetenvexit
- Readline
- You can use your Ctrl+A Ctrl+E Alt-F Alt+B Ctrl+W all you want.
- Install required readline library and headers
e.g. installation for Ubuntu:
sudo apt install libreadline8 libreadline-dev
- clone it:
git clone https://github.com/3lswear/minishell
- build it
cd minishell && make
- IO redirection sometimes is pure magic
- Writing shells is hard
- Bash is in many places terrible and inconsistent but it's a de-facto standard and we have to live with it.
This is a team project coded by: