9fans archive / 2000 / 11 / 40 /    prev next

From: "Douglas A. Gwyn" <gwyn@arl...>
Subject: Re: [9fans] usage of CPU server
Date: Thu, 2 Nov 2000 17:44:32 GMT

Boyd Roberts wrote:
> now, the 8th Edition shell, now that was a shell.

Indeed, the BRL version of the Bourne shell adopted some of the
8th Edition features, which I found very handy.  It also had
job control (from-scratch implementation mainly by Ron Natalie),
which led to an argument with Korn over what POSIX j.c. specs
should look like.  Because it needed to serve as a common base
for 7th Edition, JHU/BRL, BSD, System V, etc. environments it
unfortunately had a lot of compile-time parameters for tailoring.
I fixed all the porting issues I could find, especially the one
that caught SIGSEGV to allocate memory (also addressed by Korn;
a tailorable choice in the BRL version); it was ported without
source-code changes to a large variety of UNIX variants.  The
most useful extensions, some of which are now seen in other shells:
	builtin and whatis commands
	-S flag turns on cd spelling correction
	$ENV per-shell startup command file (opposite order from Korn)
	-E flag to prevent termination on (accidental) EOF
	-H flag enables history ($HISTFILE) and command-line editing
	ESC ESC filename completion, ESC ? lists candidates
	-I flag enables reporting of process information
	-J flag enables job control
	$PPID set to parent process ID
	directories etc. not attempted to execute
	builtin cd/chdir, pwd keeps track of path a la Plan9r3
	~username substitution
	$TIMEOUT shell timeout (0 disables)
I'm still using it on Solaris 8, despite availability of Korn
and older Bourne shells there.