jrd@STONY-BROOK.SCRC.SYMBOLICS.COM (John R. Dunning) (07/20/88)
I recently discovered why my ARC was behaving so strangely. When I tell gulam "arc a foo *.c" gulam attempts to expand the "*.c" into "foo.c bar.c baz.c ...", and substitute that list of file names into the arglist before starting up ARC. the problem, of course, is that if you've got very may files, gulam comes up with a ridiculously long arglist, and ends up trying to call ARC with a bogus argstring, or otherwise getting confused. Checking the GULAM doc reveals some stuff about how it's a feechur (as opposed to a bug in a tux) that it attempts to outsmart itself this way, but I couldn't find any way to disable the feechur. Does anyone know if it's possible?
ljdickey@water.waterloo.edu (Lee Dickey) (07/20/88)
In article <19880719193319.2.JRD@MOA.SCRC.Symbolics.COM> jrd@STONY-BROOK.SCRC.SYMBOLICS.COM (John R. Dunning) writes: | I recently discovered why my ARC was behaving so strangely. When I tell | gulam "arc a foo *.c" gulam attempts to expand the "*.c" into "foo.c | bar.c baz.c ...", and substitute that list of file names into the | arglist before starting up ARC. the problem, of course, is that if | you've got very may files, gulam comes up with a ridiculously long | arglist, and ends up trying to call ARC with a bogus argstring, or | otherwise getting confused. | [...] | ... Does anyone know if it's possible [ to disable this feature ] ? Try arc a foo '*.c' -- L. J. Dickey, Faculty of Mathematics, University of Waterloo. ljdickey@WATDCS.UWaterloo.ca ljdickey@water.BITNET ljdickey@water.UUCP ..!uunet!watmath!water!ljdickey ljdickey@water.waterloo.edu
rosenkra@Alliant.COM (Bill Rosenkranz) (07/21/88)
---
In article <19880719193319.2.JRD@MOA.SCRC.Symbolics.COM> jrd@STONY-BROOK.SCRC.SYMBOLICS.COM (John R. Dunning) writes:
->I recently discovered why my ARC was behaving so strangely. When I tell
->gulam "arc a foo *.c" gulam attempts to expand the "*.c" into "foo.c
->bar.c baz.c ...", and substitute that list of file names into the
->arglist before starting up ARC. the problem, of course, is that if
->you've got very may files, gulam comes up with a ridiculously long
->arglist, and ends up trying to call ARC with a bogus argstring, or
->otherwise getting confused.
this is NOT a bug...this is the way gulam is s'posed to work (as does
sh and csh under unix). gulam expands any file wildcards (or more properly
regular expressions) before doing its system(3) call (or Pexec). if you
want arc to read the * in the command line, you must quote it thusly:
arc a foo '*.c'
->Checking the GULAM doc reveals some stuff about how it's a feechur (as
->opposed to a bug in a tux) that it attempts to outsmart itself this way,
->but I couldn't find any way to disable the feechur. Does anyone know if
->it's possible?
no, it didn't out smart itself, you just did not understand how the shell
works. just remember to quote and you should be alright. (ain't Unix
wunnerful for new users? :^). the unix csh has a global variable called
'noglob' which inhibits this action. i don't think gulam has it so you
manually disable it with quotes.
-bill
wheels@mks.UUCP (Gerry Wheeler) (07/21/88)
In article <19880719193319.2.JRD@MOA.SCRC.Symbolics.COM>, jrd@STONY-BROOK.SCRC.SYMBOLICS.COM (John R. Dunning) writes: > When I tell gulam "arc a foo *.c" gulam attempts to expand the "*.c" > into "foo.c bar.c baz.c ..." but I couldn't find any way to disable the > feechur. Well, in some of the shells I'm familiar with, you can enclose an argument in quotes to hide special characters from the shell. In the Bourne shell and Korn shell (and maybe cshell, though I'm not familiar with it) you can use double quotes (") to hide some things but still allow others, and you can use single quotes (') to hide everything. So, your example would become: arc a foo '*.c' -- Gerry Wheeler Phone: (519)884-2251 Mortice Kern Systems Inc. UUCP: uunet!watmath!mks!wheels 35 King St. North BIX: join mks Waterloo, Ontario N2J 2W9 CompuServe: 73260,1043