Minishell is a minimalistic shell implemented as part of the 42 curriculum. It aims to replicate some functionalities of the bash shell, providing a platform to understand the underlying processes and interactivity of a Unix shell.
- Command execution
- Built-in commands:
echo
,cd
,unset
,env
,exit
,export
,pwd
. - History
- Signal management (
ctrl-C
,ctrl-D
) - Implementations of pipes (
|
) redirections (>
,>>
,<
) and heredoc (<<
) - Environment variable expansion with
$
- And many more...
- GCC
- Make
- Clone the repository:
git clone https://github.com/Clmntsnd/Minishell
- Enter the directory:
cd minishell
- Compile:
make
- Run:
./minishell
Once you've started the shell, you can use it as you would a basic Unix shell.
If you want to see a glimpse of the usage for this program, see LaOuede's repo here.
We, LaOuede, and I, both collaborated on this project! 🚀