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/


Reply via email to