Skip to content

ybenlafk/MINISHELL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Minishell

Welcome to Minishell! This is a C project that aims to create a simple shell program, providing a command-line interface where users can execute commands and manage processes.

Features

  • Command execution: Execute commands entered by the user, including built-in commands and external programs.
  • Built-in commands: Support for common shell built-in commands such as cd, pwd, echo, and exit.
  • Input/output redirection: Allow input/output redirection using < and > operators.
  • Pipeline and command chaining: Enable the execution of commands in a pipeline or chain using | and ; operators.
  • Environment variables: Support for managing environment variables, including setting, getting, and exporting variables.
  • Signal handling: Proper handling of signals, including Ctrl+C (SIGINT) and Ctrl+Z (SIGTSTP).
  • Job control: Basic job control features, including background execution and managing background/foreground processes.

Getting Started

To compile and run Minishell on your local machine, follow these steps:

  1. Clone the repository:
  2. Navigate to the project directory:
  3. Install the readline library:
  4. Compile the code using a C compiler and link with the readline library:
  5. Run the Minishell program:
  6. You can now start entering commands and interacting with the shell.

Usage

Minishell supports the following built-in commands:

  • cd <directory>: Change the current working directory.
  • pwd: Print the current working directory.
  • echo <message>: Print the specified message.
  • exit: Exit the shell program.

Additional shell features such as input/output redirection, pipeline execution, environment variable management, and job control can be used as part of the command line.

Contributing

Contributions are welcome! If you would like to contribute to Minishell, please follow these steps:

  1. Fork the repository.
  2. Create a new branch for your feature or bug fix.
  3. Make your changes and commit them with clear and descriptive messages.
  4. Push your changes to your forked repository.
  5. Submit a pull request, explaining your changes and why they should be merged.

Make sure to customize the content to fit your specific project details. Provide clear instructions on how to install the readline library, compile and run the program, explain the available built-in commands and features, and include a contribution guide and contact information for users who want to get in touch with you.

About

Writing small shell using c.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published