Minishell

Details About The Project

¿Por qué he hecho este proyecto?

Minishell fue un desafío para profundizar en programación de sistemas y comprensión del funcionamiento interno de una terminal, algo que rara vez se aborda en proyectos tradicionales. Me permitió practicar C al máximo, entender cómo se interpretan y ejecutan los comandos en entornos Unix y cómo se gestionan procesos, memoria y flujos de entrada/salida. Trabajar en este proyecto ha reforzado mis habilidades en programación de bajo nivel y me ha dado una perspectiva más sólida sobre cómo interactúa una aplicación con el sistema operativo.

Descripción

Minishell es una implementación propia de una shell de Unix escrita en C, desarrollada como parte del currículo de 42 Madrid. El objetivo del proyecto es recrear las funcionalidades básicas de una terminal tipo Bash, incluyendo la ejecución de comandos internos y externos, manejo de procesos, pipes, redirecciones y gestión de variables de entorno. Este proyecto implica el uso de llamadas al sistema de bajo nivel, control de procesos (fork(), execve()), gestión de entrada/salida y señales, y construcción de un intérprete de comandos desde cero, sin dependencias externas.

Other Projects