the goal of this project was to implement a shell of our own, with basics built-ins and binaries execution.
C language was used to achieve this project.
This project introduced us to new concepts or allowed us to deepen our knowledge about old ones, such as :
- abstract syntax tree,
to parse the command line that is prompted. - forks and pipes,
to execute binaries or programs inside other programs - open, read & write and more about FDs magic.
- Termcaps management
- env and env variables
- linked-list
- and more...
it's easy to try:
- clone the project with this command line:
git clone git@github.com:putguigz/minishell.git - libraries
- you might have to install cmake, ndevel-curses and other missing libraries with your package manager (homebrew / dnf / apt etc...)
- compile with our makefile : just type in
make
- then launch the binary, and try our shell (it takes no arguments)
./minishell
