--- Begin Message ---
Hi,
Actually, POSIX: The Open Group Base Specifications Issue 6
IEEE Std 1003.1, 2004 Edition Copyright © 2001-2004 The IEEE and The
Open Group, All Rights reserved., states:
======================================================================
Another way that some historical implementations handle shell
scripts is by recognizing the first two bytes of the file as
the character string "#!" and using the remainder of the first
line of the file as the name of the command interpreter to
execute.
======================================================================
So it is only a two byte magic, which is what I recall. It
gets even better:
======================================================================
2.1 Shell Introduction
The shell is a command language interpreter. This chapter describes
the syntax of that command language as it is used by the sh utility
and the system() and popen() functions defined in the System
Interfaces volume of IEEE Std 1003.1-2001.
The shell operates according to the following general overview of
operations. The specific details are included in the cited sections of
this chapter.
1. The shell reads its input from a file (see sh), from the -c
option or from the system() and popen() functions defined in the
System Interfaces volume of IEEE Std 1003.1-2001. If the first
line of a file of shell commands starts with the characters
"#!", the results are unspecified.
======================================================================
manoj
--
Men freely believe that what they wish to desire. Julius Caesar
Manoj Srivastava <srivasta@debian.org> <http://www.debian.org/%7Esrivasta/>
1024D/BF24424C print 4966 F272 D093 B493 410B 924B 21BA DABB BF24 424C
--- End Message ---