Files
minishell/README.md
2024-10-17 07:33:46 +02:00

45 lines
1.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 🐚 minishell Custom UNIX Shell 💻
Welcome to **minishell**, a project that implements a **custom UNIX shell** from the ground up! 🌟 This shell allows for command execution, pipe management, and process handling. 🌐
## 📝 Project Overview
In this project, we create a fully functional **UNIX shell** that supports various commands, piping between processes, and robust error handling. The shell is designed to handle signals 📡 and fork processes efficiently 🍴, simulating the behavior of bash and other traditional UNIX shells. 🚀
### Features:
- 🔹 **Command execution**: Run shell commands with ease.
- 🔹 **Pipe management**: Link commands together for streamlined output processing.
- 🔹 **Signal handling**: Manage signals effectively within the shell environment.
- 🔹 **Process forking**: Create child processes to execute commands.
- 🔹 **Error handling**: Robust mechanisms to handle errors gracefully.
## 🛠️ Installation & Setup
To get started, follow these steps to set up and run the project:
1. **Clone the repository**:
```bash
git clone https://github.com/your-username/minishell.git
cd minishell
make
```
2. **Run the shell**:
```bash
./minishell
```
## 🔍 Technologies Used
- C 💻: Primary language used to implement the shell.
- System Calls 📞: Leveraging UNIX system calls for process management and execution.
- Pipes 🚰: Implementing inter-process communication through pipes.
- Signals ⚡: Handling OS signals for effective process management.
## 🎯 Goals of the Project
- Create a functional UNIX shell that mimics common shell behaviors.
- Understand key operating system concepts such as process management and system calls.
- Enhance programming skills in C through practical application.
Thank you for checking out minishell! 🌟 Happy coding! 💻