In my Systems Programming class at Drexel University, we had a series of assignments where we
built parts of a custom shell. Essentially, a shell is just a program that continuously takes input and runs commands.
So that was all that the shell could do at first, by utilizing the C language's
execv and chdir functions.
Then, input and output redirection using >, <, and >> was added, and then pipes using | shortly after.
I also added color to give my shell a little bit of personality, and I plan on adding color to the "ls" output in order to
easily distinguish between directories and different file types.
Unfortunately, I am not able to post the source code here because this was done for a class, and I can't have any
other Drexel students copying my work. However, interested parties can make a request for the source code by using
the contact form at the bottom of the home page found
here.