ARG_MAX
| Shells
| portability
| permissions
| UUOC
| ancient
| -
| ../Various
| HOME
$()
vs )
| IFS
| using siginfo
| nanosleep
| line charset
| locale
Extracts from Dynix 3.2.0 doc/RELEASE.NOTES
[...] Ucb Shell Redirection Can Affect Some Programs (08437) When either csh or sh does output redirection using the '>' or '>>' metacharacters, the APPEND bit is set on the descriptor (which differs from most UNIX implementations). This is done in DYNIX so that when parallel make(1) is used and the output is redirected to a file, the output is less scrambled. However, this behavior has a minor effect on programs which write to standard output and expect to seek backwards on out- put. An example of such a program is one that does a seek backwards from the current file position on stdout and then writes again on stdout. The expectation is that when stdout is redirected to a file, the backward seek should work. However, since since the shell set APPEND on the file descriptor when redirection was done, the write after the seek still appends to the end of the file, as if the seek had failed. Workaround. One workaround is to clear the APPEND bit on stdout. This can be done using the fcntl(2) system call: #include <fcntl.h> int res; if ((res = fcntl(fileno(stdout), F_GETFL, 0)) < 0) perror("fcntl"); res &= ~FAPPEND; if (fcntl(fileno(stdout), F_SETFL, res) < 0) perror("fcntl"); Another workaround is to use the att universe version of sh, which does not set the APPEND bit on file redirection. [...] Shell $PARALLEL Value Must Be 2 or More (07788) With the parallel extensions to the Bourne shell, you may specify the maximum number of background jobs by setting the environment variable $PARALLEL. However, setting $PARALLEL to a value of 0 or 1 causes command pipelines to hang. Workaround. If you set $PARALLEL, give it a value greater than 1. [...]