Regarding the "shebang", there seem to be two aspects:
Earnie Boyd wrote:
> --- Joerg Bruehe <joerg@...> wrote:
> > AFAIK, the "shebang" is a feature of the Unix/Linux kernel:
> No, no, no!!! It is supported by the shell not the kernel. Take a look at the
> source code for any shell.
I will have to check at home what Stevens ("APUE") writes about that,
before I venture to contradict you - I seem to remember reading it
However, the "X/Open Portability Guide" states (quoted from issue 3,
italic type replaced by double quotes):
1) About "sh", section "Commands":
A "simple command" is a sequence of non-blank "words" separated
by "blanks". The first word specifies the name of the command to
be executed. ...
[Later, in section "Execution":]
If the command name matches neither a special command nor the name
of a defined function, a new process is created and an attempt
is made to execute the command via one of the "exec" functions.
2) About the "exec" system calls:
If the process image file is not a valid executable object, the
"execlp()" and "execvp()" functions use the contents of that file
as standard input to a command interpreter conforming to "system()".
I took the shebang to be a generalization of that kernel switch
to a "standard shell".
However, all the "shebang" stuff may be moot for me because I mixed up
other things (entirely my fault):
Earnie Boyd wrote:
> Zsh *does* support `#! /path/to/zsh' notation in the scripts. What problems
> are you experiencing with this.
As I wrote earlier, I take command files from Unix platforms, so the
shell scripts do not contain a shebang (let alone one specifying
the Windows path name to a "zsh").
I had mixed it up with Unix "exec" calling a Bourne-compatible shell
Please accept my apologies if I seemed to accuse the "zsh"
for lack of a good feature.
Joerg Bruehe, SQL Datenbanksysteme GmbH, Berlin, Germany
(speaking only for himself)