sh changes
    Comfy chair 
    ken at rochester.ARPA
       
    Wed Jun 18 03:25:36 AEST 1986
    
    
  
References:
I hit an incompatability between the 4.2 BSD sh and Sun 3.0 sh. Here
are the relevant parts of the manual pages:
>From 4.2 BSD system:
     ${parameter-word}
          If parameter is set, substitute its value; otherwise
          substitute word.
     ${parameter=word}
          If parameter is not set, set it to word; the value of
          the parameter is then substituted.  Positional parame-
          ters may not be assigned to in this way.
     ${parameter?word}
          If parameter is set, substitute its value; otherwise,
          print word and exit from the shell.  If word is omit-
          ted, a standard message is printed.
     ${parameter+word}
          If parameter is set, substitute word; otherwise substi-
          tute nothing.
>From Sun 3.0 system:
     ${parameter:-word}
          If parameter is set and  is  non-null,  substitute  its
          value; otherwise substitute word.
     ${parameter:=word}
          If parameter is not set or is null set it to word;  the
          value  of  the  parameter  is  substituted.  Positional
          parameters may not be assigned to in this way.
     ${parameter:?word}
          If parameter is set and  is  non-null,  substitute  its
          value;  otherwise,  print word and exit from the shell.
          If word is omitted, the message ``parameter null or not
          set'' is printed.
     ${parameter:+word}
          If parameter is set and is non-null,  substitute  word;
          otherwise substitute nothing.
In case you missed it, the difference is the extra colon in the Sun 3.0
system. Questions: when and why was this change made?  Are there any
other variants of Unix with this change? Has anybody's command file
broken on account of this?
	Ken
-- 
UUCP: ..!{allegra,decvax,seismo}!rochester!ken ARPA: ken at rochester.arpa
Snail: CS Dept., U. of Roch., NY 14627. Voice: Ken!
    
    
More information about the Comp.unix
mailing list