Minishell is a simple and lightweight shell, coded from scratch, which emulates several functionalities from bash.
This shell covers the following functionalities:
- Show a prompt when waiting for a new command
- Search and launch the right executable (based on the PATH variable or by using relative or absolute path) like in bash
- Implement some
builtinslike in bash:echowith option β-nβcdwith only a relative or absolute pathpwdwithout any optionsexportwithout any optionsunsetwithout any optionsenvwithout any options and any argumentsexitwithout any options
;in the command separates commands like in bashβand"like in bash except for multiline commands- Redirections
< > β>>βlike in bash except for file descriptor aggregation Pipes |like in bash except for multiline commandsEnvironment variableslike in bash$?like in bashctrl-C,ctrl-Dandctrl-\have same result as in bash
Clone the project
git clone https://github.com/vdedios/minishellGo to the project directory
cd project-directoryCompile source code
makeRun the shell
./minishellThis project has been exhaustively tested with @cacharle minishell tester achieving a 100% coverage. We highly recommend to use it:
pip3 install minishell-test
cd <MINISHELL>
minishell_test|
@vdedios |
@migferna42 |
If you find any issue we suggest that you open a PR with the fix π