On Tue, 15 Jun 2010 09:25:05 -0700, Chip Camden <[email protected]> 
wrote:
> As others have mentioned, you need to quote or escape the * in the
> command line:
> 
> admin "cell*"

The problem, for explaination purposes, is that the shell you
enter the command will already expand cell* to cell_A, cell_B
and so on. This means that inside your script $1 will be assigned
the first matching entry, $2 would be the second one, $3 a third
one and so on.

To avoid this, you need to directly communicate the * to your
script's parameter $1, which is done by escaping or quoting it.
In this case, $1 will contain a literal * inside the script.

In most cases when scripting, it's useful not to assume such a
complicated command line processing. You better let the shell
do the expansion of *, so your script gets a lot of parameters,
one for each match, and you then continue to process them.

Another option is to just provide a prefix pattern to your
script, and let IT then add the * to expand it internally
within the script (i. e. by the shell that processes the
script). So you won't have to give a * at the command line
of the calling dialog shell.




-- 
Polytropon
Magdeburg, Germany
Happy FreeBSD user since 4.0
Andra moi ennepe, Mousa, ...
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[email protected]"

Reply via email to