Minishell is a project for the 42 school curriculum. It is a simple Unix-like shell written in C that supports command execution, pipes, redirections, and other basic shell features. The project uses an abstract syntax tree (AST) for parsing, dispatch tables for built-in commands, and clear error handling.
Developed in collaboration with @tetiana-cherni.
- Command execution with arguments
- Pipes and redirections (including heredoc)
- Environment variable expansion
- Built-in commands
- Command history
- Signal handling (Ctrl+C, Ctrl+D)
- Exit status handling (
$?) - Memory management to prevent leaks
Me:
- Lexer and parser
- Signal handling
- Built-ins
- Heredoc
- Environment variable expansion
- Executor
- Error handling
Shared responsibilities:
- Memory management
- Testing and debugging
make
./minishell