Este proyecto es un intérprete interactivo de comandos similar a bash, desarrollado para Linux utilizando exclusivamente llamadas al sistema (system calls) y funciones básicas como fork(), exec(), waitpid() y manejo de señales.
El objetivo es comprender el funcionamiento interno de un shell, la gestión de procesos, la redirección de E/S y la ejecución de comandos tanto internos como externos.
cd— Cambia el directorio actualls— Lista archivos en el directoriopwd— Muestra la ruta actualmkdir— Crea un directoriorm— Elimina archivos o carpetascp— Copia archivosmv— Mueve o renombra archivos o directorioscat— Muestra el contenido de un archivo
Permite ejecutar comandos como: gcc, vim, nano, etc.
usando fork() + execvp().
Permite ejecutar comandos con & al final, sin bloquear el shell.
>>><
Uso de señales (SIGCHLD) para limpiar procesos hijos finalizados.
Este proyecto incluye un Makefile, por lo que compilar es tan simple como:
make