Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!samsung!uunet!cbmvax!jesup From: jesup@cbmvax.commodore.com (Randell Jesup) Newsgroups: comp.os.misc Subject: Re: Globbing Message-ID: <20077@cbmvax.commodore.com> Date: 25 Mar 91 02:29:27 GMT References: <17602@lanl.gov> <18205@lanl.gov> <18365@lanl.gov> <18511@lanl.gov> Reply-To: jesup@cbmvax.commodore.com (Randell Jesup) Organization: Commodore, West Chester, PA Lines: 35 In article kenw@skyler.arc.ab.ca (Ken Wallewein) writes: [ proposal that shells only deal with commands they know the syntax of ] >There's a compromise solution which might be more acceptable. If we >changed that word "required" to "allowed", it would be a lot more practical >to implement in current environments. In would still, however, be subject >to other limitations of shell syntax. There are 4 main classes of shell/globbing interaction: 1) shell globs unless argument is quoted or metacharacter is escaped; 2) shell doesn't glob unless told to via a metacharacter; 3) either 1 or 2 plus the ability to tell the shell the syntax of a command and override the default behavior of 1 or 2; 4) shell does no globbing. (Unix is type 1 under existing shells, AmigaDos default shell is type 4, though some 3rd- party shells have implemented type 1 and type 3.) I have written shells of types 1, 3 (over 1 & 2) and 4. All solutions except 1 more-or-less require programs do globbing (though some may not require it of all programs, since all solutions except 4 provide a way to get globbing). Personally, my current leaning is for 2, though if you're implementing it in a existing system (particularily one that has been type 1) you'll probably need to use 3 to make things livable. BTW, I feel that ALL shells (1-4) should allow interactive completion and expansion of arguments ala tcsh (tcsh completion plus the ability to tell it to insert all matches). It can be quite handy to see the results of a globbing before it actually runs the command in some cases. -- Randell Jesup, Keeper of AmigaDos, Commodore Engineering. {uunet|rutgers}!cbmvax!jesup, jesup@cbmvax.commodore.com BIX: rjesup Thus spake the Master Ninjei: "To program a million-line operating system is easy, to change a man's temperament is more difficult." (From "The Zen of Programming") ;-)