Next: Why is nothing happening when I enter shell commands?, Previous: How can I make shell completion use forward slashes?, Up: Subprocesses [Contents][Index]
This might happen if, for example, you invoke nmake
in a
shell and it tries to create sub-shells. The problem happens because
when the shell is initially created, the first argument to the shell
is not the directory in which the shell program resides. When this
happens, command.com
fabricates a value for its
COMSPEC
environment variable that is incorrect. Then, when
other programs go to use COMSPEC
to find the shell, they are
given the wrong value.
The fix for this is to either prevent any arguments from being sent to
the shell when it starts up (in which case command.com
will
use a default, and correct, value for COMSPEC
), or to have the
first argument be the directory in which the shell executable resides.