On Friday 17 April 2009 12:29:29 sharkura wrote: > I am looking for a way to pass an array variable as an argument to a > function. The only remotely similar post I found dealt with spaces in > arguments, which is not my problem. > > I want to pass three arguments to a function. I want to receive them as > three positional parameters, $1 (an array), $2 (a scalar integer), and $3 > (another scalar integer). The integers are optional. > > Currently, if I pass my array argument as ${arraya...@]}, the contents > actually expand to positional parameters $1, $2, ... $N. I could just > assume that the last two positional parameters are my two integer > arguments, but I'd like them to be optional. The size of the array is not > fixed. > > I've googled and searched this forum, but all the examples I've found use a > global array that is not passed as an argument, but defined prior to the > function that uses it. Kind of ugly to me, but a solution if no other > exists.
other options: - rebuild array using $@ - pass var by reference and duplicate it manually in the function: do_something arrayArg otherwise, what you mention is best i could think of real quick ... -mike
signature.asc
Description: This is a digitally signed message part.