Skip to content

ilyassealdidi/minishell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

203 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

> Minishell

Minishell is a simplified Unix shell implemented in C. It provides basic shell functionalities such as executing commands, handling pipes, redirections, and environment variables.

✨ Features

  • Command execution (built-in and external)
  • Input/output redirection (>, <, >>)
  • Pipes (|)
  • Environment variable expansion
  • Built-in commands: cd, echo, pwd, export, unset, env, exit
  • Signal handling (e.g., Ctrl+C, Ctrl+D)

🚀 Getting Started

📋 Prerequisites

  • GCC or Clang
  • Make
  • Unix-like environment (Linux, macOS)

🔨 Building

make

▶️ Running

./minishell

💻 Usage

Type commands as you would in a standard shell:

minishell$ ls -l | grep minishell > output.txt
minishell$ export PATH=$PATH:/custom/path
minishell$ cd ..

📁 Project Structure

  • src/ — Source code files
  • include/ — Header files
  • Makefile — Build instructions

👥 Contributors

Contributor Role
Command Parsing
Command Execution

📄 License

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

About

This project is about creating a simple shell.

Topics

Resources

License

Stars

Watchers

Forks

Contributors