scotth@harlie.SGI.COM (Scott Henry) (12/20/88)
I have been following the ideas/problems about installing products on a
hard-drive which requires ASSIGNs or SETENVs (or whatever) in the startup-
sequence. I decided to do an experiment on my hard-drive startup. I had
already broken my monolithic hard-drive startup sequence into a "master"
script and several sub-scripts in a subdirectory of S: called startup. Of
course, I was executing each one by name at the appropriate point in the
boot sequence. As my boot sequence has evolved, the sub-startup scripts
have gotten closer together (and they ran asynchronously until I ran
into problems (ie: "run execute S:startup/<*&^*>")). So, how can I
execute an arbitrary sequence of scripts, with the names not need to be
known except at boot time? If I were on un*x (or similarly using Matt's
shell), I would write something like:
foreach i ( startup/* )
sh $i
end
But AmigaDog don't expand wildcards for you, and
EXECUTE S:startup/#?
isn't even recognized as a file.. BUT! There is the (brain-damaged, but
otherwise useful) PD program I've got called FOREACH, and this DOES work:
cd s:startup ; <-- this is part of the brain-damage!
foreach start#? execute ; (it doesn't work with a path)
cd <wherever I was before>
just like a charm! So, all we need is a version of ForEach supplied with
each harddrive (or better yet, with AmigaDos 1.4...), then each vendor
would (being sure that they REALLY needed to...) put a startup file in,
say S:startup, with a unique name, and the normal startup script would
catch it WITH NO ACTION NEEDED BY THE USER. Unless, of course, hes like
me and hates to have his/her machine messed with behind his/her back.
Anybody see any other problems besides the proliferation of files in S: ?
Scott Henry <scotth@sgi.com>
#include <std/disclaimer.h>
--
Scott Henry <scotth@harlie.sgi.com> {or, also on the Internet:}
<skywalker@cup.portal.com>
#include <std_disclaimer.h>