Skip to content

Latest commit

 

History

History
50 lines (37 loc) · 1.31 KB

README.md

File metadata and controls

50 lines (37 loc) · 1.31 KB

To execute the shell:

cmake .
make
./output/main

c++17 required

Theory:

  • The basic shell perform these basic operations:

    1. Load config files
    2. Run REPL loop
    3. Clean up memory to prevent leakage.
  • In the Loop part following operations are performed:

    1. Read the commands entered by the user.
    2. It will parse the commands so computer can understand the commands.
    3. Execute the commands.

Core Features:

Implemented

  1. All Linux Commands are supported (tell if some commands doesn't work)
  2. Batch Mode done (Use "rsh filename.rsh" \\ Only .rsh files allowed)
  3. Git Branch, Username, PC name and current directory display during input prompt.
  4. "exit" can be used to exit the shell and revert to default linux shell
  5. pipes ('|') and redirections ('<' or '>' or '>>') supported
  6. Google a word for its meaning in more than 6 languages

Remaining

  1. Aliases not yet implemented.
  2. cd is not fully functional.

Errors and Solutions:

  1. 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)