Proyecto minishell

Versión simplificada de una shell (Bash)

minishell

Descripción

Minishell es un proyecto básico de shell en la escuela 42, que implementa una interfaz de línea de comandos con soporte para varias funcionalidades de shell.

Características

  1. Comprender el funcionamiento de una shell:
      · Analizar cómo una shell interpreta comandos, gestiona procesos y interactúa con el sistema operativo.
  2. Implementar un intérprete de comandos:
      · Crear un programa que pueda leer, analizar y ejecutar comandos básicos como ls, cd, echo, etc.
  3. Gestionar procesos:
      · Aprender a crear, ejecutar y terminar procesos, así como a redirigir la entrada/salida estándar (stdin/stdout) y manejar pipes (|).
  4. Familiarizarte con las llamadas al sistema:
      · Utilizar funciones de bajo nivel como fork, execve, wait, pipe, dup, etc. para interactuar con el kernel del sistema operativo.
  5. Escribir código robusto y seguro:
      · Prestar atención a la gestión de errores, la prevención de fugas de memoria y la protección contra vulnerabilidades como inyecciones de comandos.
Ver código
GIF 1 del Proyecto FdF GIF 2 del Proyecto FdF GIF 3 del Proyecto FdF