A standalone shell
- All basic commands
- Semicolon separated multiple commands
- Piping implemented
- Foreground and Background Processes
- List running Jobs
- Killing all background jobs
- exit and quit commands for exiting the shell
- Signal handling like Ctrl+D, Ctrl+Z and Ctrl+C
- Code broken into appropriate modules
- Each command implemented in separate file
Instructions for using this shell
make ./main
<command> <argument if any> ;
<command> & ;
<command1> | <command2>
<command> </>/>> <file>