Minishell is a minimalist shell implementation in C, created for educational purposes. The project supports basic features of a bash-like shell.
- Execute external programs with arguments
- Built-in commands:
echo,cd,pwd,export,unset,env,exit - Support for pipes (
|) and redirections (>,<,>>,<<) - Heredoc (
<<) - Environment variables (export, modify, unset)
- Signal handling (
Ctrl+C,Ctrl+D) - Command history (via readline)
- Proper memory management
Requires GNU Make, a C compiler, and the readline library.
make./minishellsrc/— minishell source codeincludes/— header fileslibft/— custom C standard library functionstests/— tests (if present)Makefile— build rules
Type commands as in a regular shell:
echo Hello, World!
export VAR=42
echo $VAR
ls -l | grep minishell > result.txt
cat << EOF
multi-line
heredoc
EOFFor educational use only.