This is repository contains my implementation of a simple Linux shell in C. This project is designed to:
- Learn: Gain practical experience with operating system concepts and system programming.
- Challenge: Implement core functionalities of a shell, including parsing commands, handling input/output, and executing programs.
- Grow: Develop problem-solving and coding skills through a hands-on project.
- Interactive Prompt: Accept users command and displays input
- Non-Interactive mode: Works in non-intractive mode also like the linux shell
- Command execution: Runs all linux commands that can be executed by the linux simple shell except some built-ins command like
alias
- Clone the repository:
git clone https://github.com/Hullaah/simple_shell
- Install required dependencies:
sudo apt install build-essential
- Build the Project:
gcc -Wall -Werror -Wextra -pedantic -std=gnu89 *.c -o hsh
- Run the executable:
./hsh
You can test the shell by running various Linux commands and checking the output. You can also write your own test script to ensure functionality.
I welcome contributions to this project. Please feel free to open pull requests with bug fixes, improvements, or new features.
This project is for educational purposes only and is not intended to be a fully functional shell replacement. It may not support all features of a real shell and may have limitations.
- The Linux Programming Interface: https://man7.org/tlpi/
- Bash documentation: https://www.gnu.org/software/bash/