Minishell is a project that seeks to recreate a shell inspired by Bash, coded in C.
git clone git@github.com:rimarque/Minishell.git
- Prompt display
- Lexer and parser for the input, with the use of an abstract syntax tree
- Incorporation of the echo, cd, pwd, unset, export, env and exit built-ins
- Support for pipe functionality, enabling users to chain multiple commands together
- Implementation of overwrite and append redirections (input and output, including here_doc)
- Handling expansion of environment variables and exit status
- Handling single and double quotes
- Signal handling for ctrl-C, ctrl-D and ctrl-\
- Continuous update of exit status
- Working history
To compile the program you should run make
.
This rule will generate an executable file named minishell
. To launch the executable you should follow this syntax:
$ ./minishell