I am curious about the decision to escape commands such as |'s, <'s, and >'s in the Bourne Shell. This is the default shell used for Mac OS X Mountain Lion and I ran into an issue where these commands were being escaped. To get around this I simply set the shell being used by my CommandLine, but I essentially just copied the Bourne Shell and left off a few commands. I also had an issue where any variable names ($variable) were being escaped. Is there a way to disable this escaping with the default Bourne Shell? Or is it expected for me to define my own shell when I create a CommandLine instance?