Skip to content

A lightweight shell program implemented in C that supports basic command execution. This project demonstrates fundamental concepts of process management, tokenization, and user interaction in a Linux environment.

License

Notifications You must be signed in to change notification settings

stephenombuya/Mini-Shell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

Mini Shell

A lightweight shell program implemented in C that supports basic command execution. This project demonstrates fundamental concepts of process management, tokenization, and user interaction in a Linux environment.

Features

  • Command execution (e.g., ls, pwd, etc.).
  • Input parsing and tokenization.
  • Graceful handling of invalid commands.
  • Exit command to terminate the shell.

Usage

Prerequisites

  • A C compiler (e.g., GCC).
  • A Linux or UNIX-based operating system.

Installation

  1. Clone the repository:
    git clone https://github.com/stephenombuya/Mini-Shell
    cd mini-shell
  2. Compile the program:
    gcc -o mini-shell mini_shell.c

Running the Shell

Start the shell by running:

./mini-shell

You will see a prompt mini-shell> where you can type commands.

Example Usage

mini-shell> ls
mini-shell> pwd
mini-shell> exit

Contributing

Contributions are welcome! Follow these steps:

  1. Fork the repository.
  2. Create a new branch:
    git checkout -b feature-name
  3. Commit your changes:
    git commit -m "Description of changes"
  4. Push to the branch:
    git push origin feature-name
  5. Open a pull request.

License

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

Acknowledgements

  • Inspired by the need for simple examples in operating systems and C programming.

About

A lightweight shell program implemented in C that supports basic command execution. This project demonstrates fundamental concepts of process management, tokenization, and user interaction in a Linux environment.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published