When running programs, it is useful to provide input from a file or to direct output to a file. The syntax
[process] > [file] tells your shell to redirect the process’s standard output to a file. Similarly, the syntax
[process] < [file] tells your shell to feed the contents of a file to the process’s standard input.
Modfiy your shell so that it supports redirecting stdout and stdin to/from files. You do not need to support redirection for shell built-in commands. You do not need to support stderr redirection or appending to files (e.g.
[process] >> [file]). You can assume that there will always be spaces around special characters
>. Be aware that
< [file] or
> [file] are not passed as arguments to the program (i.e. you will not find these characters in the
argv argument of the
main function in