26 Sep
2012
26 Sep
'12
4:59 p.m.
On Wed, Sep 26, 2012 at 03:55:14PM -0400, John Dennis wrote:
- if [ "$6" ] + if [ ! -z "$6" ] && [[ $6 =~ ^[0-9]+$ ]] && [ $6 -gt 0 ]
radtest starts with /bin/sh, not /bin/bash. Are you sure this regexp-matching stuff is in a vanilla POSIX shell? I don't think it is. $ /bin/dash -c '[[ "aaa" =~ "a" ]] && echo "yo"' /bin/dash: [[: not found Also you forgot to quote $6 (in case it contains spaces). Personally I would just go with: if [ ! -z "$6" -a "$6" -gt 0 ] This bombs out if you give a non-numeric value, but then that's your fault for passing bad data. A more backwards-compatible approach is simply: if [ "$6" != "" -a "$6" != "0" ] Regards, Brian.