ARG_MAX| Shells | portability | permissions | UUOC | ancient | - | ../Various | HOME
)| IFS | using siginfo | nanosleep | line charset | locale
I am glad to have found the following in the CSRG Archive CD-ROMs.
The following was released under the licenses of BSD and Caldera.
Here are extracts from the "4.1.snap" snapshot, /usr/man/man2/exec.2 (4/1/81):
System Calls EXEC(2) NAME execl, execv, execle, execve, execlp, execvp, exec, exece, environ - execute a file SYNOPSIS execl(name, arg0, arg1, ..., argn, 0) char *name, *arg0, *arg1, ..., *argn; execv(name, argv) char *name, *argv; execle(name, arg0, arg1, ..., argn, 0, envp) char *name, *arg0, *arg1, ..., *argn, *envp; execve(name, argv, envp) char *name, *argv, *envp; extern char **environ; DESCRIPTION Exec in all its forms overlays the calling process with the named file, then transfers to the entry point of the core image of the file. There can be no return from a successful exec; the calling core image is lost. [...] To aid execution of command files of various programs, if the first two characters of the executable file are '#!' then exec attempts to read a pathname from the executable file and use that program as the command files command interpreter. For example, the following command file sequence would be used to begin a csh script: #! /bin/csh # This shell script computes the checksum on /dev/foobar # ... A single parameter may be passed the interpreter, specified after the name of the interpreter; its length and the length of the name of the interpreter combined must not exceed 32 characters. The space (or tab) following the '#!' is manda- tory, and the pathname must be explicit (no paths are searched). [...]