Is it possible to specify a shebang line without knowing the path of the program you want to do the executing?
maybe don't specify the path
#!node
or specify several options
#!/usr/local/bin/node
#!/usr/bin/node
Extra points for cross platform solution (various flavors of linux, BSD, OSX etc...)
/usr/bin/env
is specifically thought of for cross-platform solutions.
env executes utility after modifying the environment as specified on
the command line. The option name=value specifies an environmental
variable, name, with a value of value. The option `-i' causes env
to completely ignore the environment it inherits.
If no utility is specified, env prints out the names and values of
the variables in the environment, with one name=value pair per line.
so something in lines of:
#!/usr/bin/env node
Will be cross-platform and "the right way to go".