https://github.com/vdedios/minishell
š As beautiful as shell
https://github.com/vdedios/minishell
c shell unix
Last synced: over 1 year ago
JSON representation
š As beautiful as shell
- Host: GitHub
- URL: https://github.com/vdedios/minishell
- Owner: vdedios
- License: mit
- Created: 2021-02-25T19:07:41.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-05-05T19:43:03.000Z (about 5 years ago)
- Last Synced: 2024-10-24T02:32:19.283Z (over 1 year ago)
- Topics: c, shell, unix
- Language: C
- Homepage:
- Size: 543 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Minishell
[](https://github.com/migferna42/minishell/runs/1965281956)
Minishell is a simple and lightweight shell, coded from scratch, which emulates several functionalities from `bash`.

## Project specifications
This shell covers the following functionalities:
- Show a prompt when waiting for a new command
- Search and launch the right executable (based on the PATH variable or by using relative or absolute path) like in bash
- Implement some `builtins` like in bash:
- `echo` with option ā-nā
- `cd` with only a relative or absolute path
- `pwd` without any options
- `export` without any options
- `unset` without any options
- `env` without any options and any arguments
- `exit` without any options
- `;` in the command separates commands like in bash
- `ā` and `"` like in bash except for multiline commands
- Redirections `< > ā>>ā` like in bash except for file descriptor aggregation
- `Pipes |` like in bash except for multiline commands
- `Environment variables` like in bash
- `$?` like in bash
- `ctrl-C`, `ctrl-D` and `ctrl-\` have same result as in bash
## Usage
Clone the project
```bash
git clone https://github.com/vdedios/minishell
```
Go to the project directory
```bash
cd project-directory
```
Compile source code
```bash
make
```
Run the shell
```bash
./minishell
```
## Tests
This project has been exhaustively tested with [@cacharle](https://github.com/cacharle/minishell_test) minishell tester achieving a 100% coverage. We highly recommend to use it:
```bash
pip3 install minishell-test
cd
minishell_test
```
## Contributors
## Support
If you find any issue we suggest that you open a PR with the fix š