Newsgroups: comp.unix.wizards
Path: utzoo!henry
From: henry@utzoo.uucp (Henry Spencer)
Subject: Re: Bourne shell programming questions
Message-ID: <1988Oct16.040253.621@utzoo.uucp>
Organization: U of Toronto Zoology
References: <120@tree.UUCP>
Date: Sun, 16 Oct 88 04:02:53 GMT

In article <120@tree.UUCP> stever@tree.UUCP (Steve Rudek) writes:
>... I'd like to expand the use of memory variables since it
>reduces the need for disk access.  How much variable space do I have to
>play with?  Is this defined or at all standardized across machines?

No.  In general, you can get whatever the system is willing to give you.
Of course, as the amount gets larger, the forks needed to execute non-
builtin commands will slow down, and the shell will be more subject to
paging.

>... There is a "hash" command
>defined for shell which is scantily described in man.  Man indicates that
>it can be used to "remember" the exact path to given commands and, thus,
>reduce the overhead of calling external programs? ...

For non-interactive applications, there is no advantage to using "hash"
and it can be ignored.  The SysV shell is smart enough to remember where it
last found a command.  All "hash" does is tell the shell to find a command
(and thus remember its location) without actually executing it.  The only
real use that I'm aware of is for interactive users who want to have some
of the finding overhead concentrated at the beginning of a session instead
of spread out over it.  I experimented with it and concluded that it was
not worth the trouble, at least on our system (we don't believe in having
57 different directories in the default search path, so finding a command
doesn't involve very many tries).
-- 
The meek can have the Earth;    |    Henry Spencer at U of Toronto Zoology
the rest of us have other plans.|uunet!attcan!utzoo!henry henry@zoo.toronto.edu
