42 Malaga Project with my colleague @davigome
The Minishell project aims to create a simple shell from scratch, similar to Bash. Through this project, you will learn about processes, file descriptor handling and other essential operating system concepts.
- Interactive interface: Command entry with functional history.
- Command management: Execution of programs based on PATH or specific paths.
- Redirections: Support for
<,>,<<,>>. - Pipes: Communication between commands using
|. - Environment variables: Expansion of
$and support for$. - Signals: Handling of
ctrl-C,ctrl-D, andctrl-as in Bash. - Built-ins implemented:
echo,cd,pwd,export,unset,env,exit.
- Language: C.
- Authorized functions:
readline,fork,execve,pipe, among others. - Memory management: No leaks (except for
readline).