Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/magnitopic/minishell
As beautiful as a shell
https://github.com/magnitopic/minishell
42cursus bash clang execve linux macos minishell minishell42 parsing pipes shell signals
Last synced: about 11 hours ago
JSON representation
As beautiful as a shell
- Host: GitHub
- URL: https://github.com/magnitopic/minishell
- Owner: magnitopic
- Created: 2023-06-01T10:33:33.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-10-10T12:40:46.000Z (about 1 year ago)
- Last Synced: 2023-10-10T14:34:51.024Z (about 1 year ago)
- Topics: 42cursus, bash, clang, execve, linux, macos, minishell, minishell42, parsing, pipes, shell, signals
- Language: C
- Homepage:
- Size: 260 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Minishell
This project is about creating a simple shell.
Yes, your own little bash.
You will learn a lot about processes and file descriptors.
# Team work 💪
This project was done alongside `Javier Sarabia`(JaviBurn).
Check him and his work out at these links:- [Linkedin](https://www.linkedin.com/in/javier-sarabia-224580195)
- [GitHub](https://github.com/javiburn)
- [42Intra](https://profile.intra.42.fr/users/jsarabia)# Program
## Initial installation
```bash
git clone https://github.com/magnitopic/minishell.git
cd minishell
git submodule init
git submodule update
```## Compilation and execution
> **_Note:_** `Readline` is required for the program to compile. On Linux this should not be a problem. On Mac it can be installed with `Brew`.
> If issues persist you might need to change the value of the `EXTRAFLAGS` var in Makefile
```bash
make
./minishell
```## Execution with no env
```bash
env -i ./minishell
```# Unsupported features
The Minishell project attempts to function very similar to Bash but some features are not required or are from the bonus part.
Unclosed quotes, or special characters that are not required by the subject like `\`(backslash), `;`(semicolon) or `!!`(bang bang) are not supported.
`&&` and `||` with parenthesis for priorities as well as `*`(wildcards) are features from the bonus part.
The only implemented builtins are `echo`, `cd`, `pwd`, `export`, `unset`, `env` and `exit`.