Technical data
Bash 2.0.5b No Longer Sets Some Environment
Variables
Solaris 10 OS includes Bash 2.0.5b. This shell no longer automatically exports the following
variables to the environment:
■
HOSTNAME
■
HOSTTYPE
■
MACHTYPE
■
OSTYPE
This new behavior applies even if the shell assigns default values to these variables.
Workaround: Export these variables manually.
New ln Utility Requires -f Option
The behavior of /usr/bin/ln has changed to adhere to all of the standards from SVID3
through XCU6. If you use the ln command without the -f option to link to an existing target
le, the link is not established. Instead, a diagnostic message is written to standard error, and the
command proceeds to link any remaining source les. Finally, the ln command exits with an
error value.
For example, if le b exists, the syntax lnabgenerates the following message:
ln: b: File exists
This behavior change aects existing shell scripts or programs that include the ln command
without the -f option. Scripts that used to work might now fail in Solaris 10 OS.
Workaround: Use the -f option with the ln command. If you have existing scripts that execute
the link utility, make sure to modify these scripts to comply with the command's new behavior.
New tcsh Rejects setenv Variable NamesThat Use a
Dash or an Equals Sign
In Solaris 10 OS, tcsh has been upgraded to version 6.12. This version no longer accepts
environment variables whose names use a dash or an equals sign. Scripts that contain setenv
lines and that work in earlier Solaris versions might generate errors in the current Solaris 10
release. The following error message is displayed:
setenv: Syntax error
For more information, refer to the tcsh man page for the Solaris 10 OS.
Solaris Commands and Standards
Chapter 2 • Solaris Runtime Issues 87