Creates a subprocess for executing shell via the OS's shell interpreter, and returns an input port which reads from the output of that subprocess. The close-input-port method synchronizes with the subprocess.
Note that this procedure is named for the kind of object you get back (an input port), and not for the behavior that shell process is expected to exhibit (ie, output).