I built this shell as a learning experience for me and learning resource for other programmers. This is a shell (like bash and zsh, etc.) that has features for every-day use (but not so complete) those features include:
Tab-auto-completion (Using GNU Readline)
Store command history for the current session to navigate between commands (Using GNU Readline)
Run normal Linux command (and external applications/commands)
Run "cd" and "exit" commands and any other UNIX command
The shell supports the "~" symbol (without quotes) to go to the home directory
I had faced multiple challenges during the make of this shell because i am a beginner and didn't know what the functions used in the code does (what fork() does, waitpid() or wait(), readline, etc.)
I expected it to be much easier but no, Now that i know all of this stuff i feel like it might be easy
The shell doesn't support piping but that's planned
Thank you for reading this hope you have a great day.
See the GitHub Repository for more information
Oh, Also, If you have any questions, You can say it in the comments. I will happily answer.
Top comments (0)