Skip to content

mmarhin/shell_linux

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Proyecto Shell - Sistemas Operativos

Este proyecto es una implementación de un shell básico creado como parte de la asignatura de Sistemas Operativos en el segundo año de la carrera de Ciberseguridad e Inteligencia Artificial. El objetivo es comprender y aplicar conceptos fundamentales de sistemas operativos como procesos, memoria, gestión de entradas/salidas y ejecución de comandos.

Descripción

El proyecto consiste en la creación de un shell básico que simula el comportamiento de un sistema operativo al ejecutar comandos de manera interactiva. Además, se implementan características como:

  • Ejecutar comandos del sistema.
  • Redirección de entrada y salida.
  • Pipes (tuberías).
  • Manejo de procesos en segundo plano y primer plano.
  • Soporte para señales.

El shell permite a los usuarios interactuar con el sistema operativo de manera eficiente y flexible, gestionando múltiples procesos y ejecutando programas de forma paralela.

Instalación

  1. Clona el repositorio en tu máquina local:

    git clone https://github.com/mmarhin/shell.git
  2. Accede al directorio del proyecto:

    cd shell
  3. Compila el proyecto utilizando gcc:

    gcc Shell_project.c job_control.c -o shell
  4. Ejecuta el shell:

    ./shell

Uso

  • Para ejecutar un comando, simplemente ingresa el nombre del comando en el prompt.
  • Utiliza Ctrl+D para salir del shell.
  • Soporta redirección de entrada y salida usando > y <.
  • Puedes usar pipes con | para encadenar comandos.
  • Ejecuta programas en segundo plano con &.

Contribución

Si deseas contribuir, por favor realiza un fork del repositorio, crea una rama con tus cambios y abre un pull request para revisión.

Licencia

Este proyecto está licenciado bajo la Licencia MIT - consulta el archivo LICENSE para más detalles.


Shell Project - Operating Systems

This project is an implementation of a basic shell created as part of the Operating Systems course in the second year of the Cybersecurity and Artificial Intelligence degree. The goal is to understand and apply fundamental operating system concepts such as processes, memory, input/output management, and command execution.

Description

The project involves creating a basic shell that simulates the behavior of an operating system by executing commands interactively. Additionally, features such as:

  • Executing system commands.
  • Input and output redirection.
  • Pipes.
  • Handling background and foreground processes.
  • Signal handling.

The shell allows users to interact with the operating system efficiently and flexibly, managing multiple processes and executing programs in parallel.

Installation

  1. Clone the repository to your local machine:

    git clone https://github.com/mmarhin/shell.git
  2. Navigate to the project directory:

    cd shell
  3. Compile the project using gcc:

    gcc Shell_project.c job_control.c -o shell
  4. Run the shell:

    ./shell

Usage

  • To run a command, simply enter the command name in the prompt.
  • Use Ctrl+D to exit the shell.
  • Supports input and output redirection using > and <.
  • You can use pipes with | to chain commands.
  • Run programs in the background using &.

Contribution

If you wish to contribute, please fork the repository, create a branch with your changes, and open a pull request for review.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages