|
From: | Yang Zhang |
Subject: | Re: "$@" vs. nounset |
Date: | Mon, 29 Jun 2009 11:38:34 -0700 |
User-agent: | Thunderbird 2.0.0.22 (Windows/20090605) |
Mike Frysinger wrote:
On Monday 29 June 2009 04:54:52 Yang Zhang wrote:Hi, I like using nounset for stricter scripts, but an annoyance is that anytime I use "$@" and it's empty, I get an error, when (to me, cognitively) it is not "unset" (as in someone *forgot* to set it), it's just an empty, which is a common case (IIRC, in bash, variables set to empty arrays and unset variables are the same). As a result I'm forced to use "${@:-}" or something like that everywhere I use "$@" (which is really everywhere). Is there any other way around this? Any way to get a more selective nounset? Thanks in advance.if you search the archives, i think the previous discussion on this topic said bash-4's behavior needed to change here
I'm currently using bash 4.
does something like this at the top of the script work ? [ $# -eq 0 ] && set -- -mike
But I also would need that at the top of every function, right? -- Yang Zhang http://www.mit.edu/~y_z/
[Prev in Thread] | Current Thread | [Next in Thread] |