operating system (Or "shebang line", "
bang path")
"#!" used in
Unix to mark the start of a
script, e.g. a
are "#!", the
kernel treats the file as a script rather than
everything up to the first
whitespace) is used as the
line of an executable is
#!/usr/local/bin/perl
the script will be treated as a
Perl script and passed as an
argument to /usr/local/bin/perl to be interpreted. Some
variants of Unix also allow one or more parameters to be
passed to the interpreter, for example, you can write
#!/usr/bin/perl -w
and the script will be started as if you typed
/usr/bin/perl -w filename
on the command line. Also, most modern kernels ignore any
whitespace between the "!" and the interpreter pathname. Even
some modern kernels have fairly small limits (e.g. 32) on the
length of line they will accept, making long pathnames and
arguments somewhat unportable.
[Does anyone call this a "magic string"?]
(1998-05-06)