Debugging Node's spawn ENOENT
Just figured out a bug that was really annoying. I was running a shell command from Node, and it was working fine in some cases, but failed for my new test with the cryptic error:
spawn /bin/sh ENOENT
That was it. But of course /bin/sh
exists, so what's going on?
Turns out, this error means something doesn't exist, not /bin/sh
. It turns out that the cwd
I was setting the command to was incorrect, and in fact, didn't exist.
So when this occurs, check to see what variables are undefined when you don't expect them to be.