Fortran Library Routines                                   SH(3F)


sh - fast execution of an sh shell command


integer function sh (string) character*(*) string


The function sh gives string to the sh shell as input, as if the string had been typed as a command. The shell is always the Bourne shell, sh(1). The current process waits until the command terminates. The returned value is the exit status of the shell. See wait(2) for an explanation of this value. The functions sh(3f) and system(3f) pass the argument string to a shell for execution. They convert the argument string from a Fortran character value to a C string value and pass it to the C routine system(3c). The routines sh(3f) and system(3f) differ in that system flushes the Fortran I/O buffers before calling the C routine system, while sh does not. Flushing the buffers can take significant time, and so, if any Fortran output is irrelevant to the result of the call, the routine sh is pre- ferred over the routine system. Note that both sh(3f) and system(3f) return integer results. Therefore, they must be declared to be of type INTEGER.




execve(2), wait(2), system(3c)


string cannot be longer than 1024 characters. SunOS 5.10 Last change: 07 July 1995 1 No manual entry for 1.