This project is about writing the most stable and most complete UNIX shell possible.
The 42_Shell program wil compile into the executable 42sh
after
having cloned this repository into the desired location and running the
command make inside the cloned repository.
cd ~/Desktop &&
git clone https://github.com/amnotme/42_Shell.git &&
cd 42_Shell &&
make
The 42sh will function similiarly to a regular shell / terminal. The shell program will be able to have the following basic features:
A minimum line acquisition:
- Prompt display.
- Reading of a command line without line edition.
- Proper space and tabulations management.
The following builtins including all their features if they have any (the strict minimum being the features listed in POSIX standard):
-
cd
-
echo
-
exit
-
env
-
setenv
-
unsetenv
-
Simple execution of simple command with arguments and PATH management.
-
Error and command’s return value management.
-
The following redirections: ">", ">>", "<" and "|".
-
The following logical operators "&&" and "||".
-
The ";" separator.
Start of shell program:
Execution of duplicated UNIX commands: