To execute the shell:
cmake .
make
./output/main
c++17 required
Theory:
-
The basic shell perform these basic operations:
- Load config files
- Run REPL loop
- Clean up memory to prevent leakage.
-
In the Loop part following operations are performed:
- Read the commands entered by the user.
- It will parse the commands so computer can understand the commands.
- Execute the commands.
- All Linux Commands are supported (tell if some commands doesn't work)
- Batch Mode done (Use "rsh filename.rsh" \\ Only .rsh files allowed)
- Git Branch, Username, PC name and current directory display during input prompt.
- "exit" can be used to exit the shell and revert to default linux shell
- pipes ('|') and redirections ('<' or '>' or '>>') supported
- Google a word for its meaning in more than 6 languages
- Aliases not yet implemented.
- cd is not fully functional.
Errors and Solutions:
-
If cmake . fails with message :
"Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the"
,then run command
sudo apt-get install libssl-dev
on your terminal(tested for ubuntu 18.04 LTS)