Re: passing argument with brace expansion to script
On Sun, Jan 13, 2008 at 11:36:09PM +0100, Andreas Berglund wrote:
> Ken Irving wrote:
>> On Sun, Jan 13, 2008 at 07:59:52PM +0100, Andreas Berglund wrote:
>>> Hi!
>>> I have a script to which I would like to pass an argument that
>>> contains brace expansion, but I want the expansion to be evaluated
>>> in the script, not before it gets passed along. Does annyone know
>>> how to do that?
>>
>> Generally single or double quotes will "protect" arguments against
>> expansion in a shell command. The quotes are removed in the process,
>> so the arguments should be available separately inside the script.
>> Bash brace expansion is kind of a special case, though, and I'm not
>> sure it'll work this way... Some simple tests would answer the question.
>
> I have tried the traditional techniques with quotes, single and double,
> and backslashes and it does get the argument to the script unchanged,
> but then it won't get evaluated in the script for some reason, perhaps
> it's not possible?
I think that's the case, but can't find it clearly expressed in the bash
manpage. Some time ago I recall looking into brace expansion, maybe even
looked at the bash source code, and I'm pretty sure it's a special feature
that works well off the command line, but for some reason not after that.
I'm curious about it...
--
Ken Irving, fnkci+debianuser@uaf.edu
Reply to: