Here are some example commands that your shell should support. This is not a complete test suite; you should come up with a much more complete test suite for your shell. This is just to give you some ideas of commands to test out (the # lines are comments to you):

/bin/ls
/bin/ls -l -a

ls
ls -al
cat foo.txt


find . -name foo.txt
wc foo.txt
wc blah.txt
/usr/bin/ps
ps  -eLf
ps  -e  -L  -f

        ps              -e              -L          -f

firefox
sleeper &
ps -a
exit

cd /usr/bin
ls
../
pwd
cd   
pwd                       
# should be in home directory from last cd command above

history
!!
!8


cat foo.txt | more
cat foo.txt | grep blah

cat foo.txt blah.txt 1> out.txt 2> out.txt
wc out.txt
cat < foo.txt 1> out2.txt
diff out.txt out2.txt
ls -la yeeha.txt 2> errorout.txt

## test some error conditions
## your shell should gracefully handle
## errors by printing a useful error message and not crash or exit (it
## should just restart its main loop: print shell prompt, ...)

 |
 ls 1 >  out
 cat foo1> out
 1> < 2>