Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!seismo!rutgers!labrea!aurora!ames!sdcsvax!ucsdhub!hp-sdd!hplabs!hpcea!hpfcdc!rml From: rml@hpfcdc.HP.COM (Bob Lenk) Newsgroups: comp.unix.wizards Subject: Re: SysV shell questions Message-ID: <5980007@hpfcdc.HP.COM> Date: Thu, 20-Aug-87 20:11:54 EDT Article-I.D.: hpfcdc.5980007 Posted: Thu Aug 20 20:11:54 1987 Date-Received: Sun, 23-Aug-87 14:39:15 EDT References: <10279@orchid.waterloo.edu> Organization: HP Ft. Collins, Co. Lines: 32 > echo stuff # plain echo without \-interpretation > echo -n stuff # ditto without trailing NL (a la 7th Ed.) > echo -e stuff # echo with \-interpretation (a la 8th Ed.) > echo -? # (other options) -- error (unless "--") > The transition plan is: > Berkeley and other systems based on 7th Ed.: > Implement the final design (add -e). > System III and V based systems: > Phase I: > Add the -n option; > Accept -e (no-op in Phase I). > Phase II: > Convert all shell scripts to use -e. > Phase III: > Implement the final design. > > Now, if we can get IEEE 1003.2 to bless the final specification > (or at least Phase I of the System V transition plan), we'd be > on the way to a single combined, sensible "echo" command. The big problem is still the cost of phase II for System III and V based systems. Many/most vendors would not be willing to force that upon customers, backward compatibility being non-negotiable. The sense of -e could be reversed, but that would just place the cost on the other side of the BSD/ATT fence. Two flags to specify the desired (non)interpretation of backslash, with the default implementation defined might be the best compromise reachable. Having echo be sensitive to some environment variable that set the default might be a slight improvement on that compromise. Bob Lenk {ihnp4, hplabs}!hpfcla!rml