By their very nature, a sizeable part of the functionality of shell
scripts, is provided by the many utility programs that they routinely
call to perform important subsidiary tasks. Addressing the portability
of the script involves issues of portability in the host operating
system environment, and portability of the utility programs as well as
the portability of the shell implementation itself.
This section discusses differences between shell implementations to
which you must cater when writing a portable script. It is broken into
several subsections, each covering a single aspect of shell programming
that needs to be approached carefully to avoid pitfalls with unexpected
behaviour in some shell implementations. The following section
discusses how to cope with the host environment in a portable fashion.
The last section in this chapter addresses the portability of common