assignment:(
This is a shell designed to run like a linux terminal written in C. Semicolon separated commands are taken as inputs, parsed, and executed. Certain commands like ls, pwd, cd, pinfo, echo are inbuilt, and the remaining are executed using execvp command. Implementation is majorly done using stat and dirent. Background processes are also handled
$ make
$ ./shell
$ quit
Displays all ruinning jobs
$ jobs
Kills a specified job
$ kjob [job id] [signal]
Kills all running jobs
$ overkill
Continues a suspended background process identified by Job ID as a foreground process
$ fg [job id]
Continues a suspended background process identified by Job ID jid as a background process
$ bg [job id]
Takes a process ID as input and provides information about the process. If no arguments given, it provides information about the shell process running
$ pinfo [pid]
Has been made colorful to mimic your terminal to make it feel more usable
:( if prev command executed with an error, else :) before prompt. Previous working directory has been implemented. Use as:
$ cd -