Path: csiph.com!aioe.org!goblin3!goblin.stu.neva.ru!panix!usenet.stanford.edu!not-for-mail From: Charles Daffern Newsgroups: gnu.bash.bug Subject: Re: Is this right? test -v $hash{defined_value} == false? Date: Mon, 13 Jul 2015 07:04:00 +0100 Lines: 48 Approved: bug-bash@gnu.org Message-ID: References: <55A33770.8080208@tlinx.org> NNTP-Posting-Host: lists.gnu.org Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="eQJveCsXgsrXsLkxQJL9LkLuhCarL5n8P" X-Trace: usenet.stanford.edu 1436767471 11655 208.118.235.17 (13 Jul 2015 06:04:31 GMT) X-Complaints-To: action@cs.stanford.edu To: bug-bash@gnu.org Envelope-to: bug-bash@gnu.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=subject:to:references:from:openpgp:message-id:date:user-agent :mime-version:in-reply-to:content-type; bh=eGqUy1O6cEfVe+RKcp8zpKSZI7BOwSWruzVns+6+BAU=; b=MDlsdI2qkFqyhzG5LJ3kDKtXqTMbSt6S1UOK/F3G0K0DlG417mOIoYbDhPVuRDLh7M ta8VcFa4fMZ47JdisoDeHV93sgKgNwSCYq3OtCkl5YroYsTqewXw/hV1KyFQUf22ZEH3 qGlIDZzsbZpufwUjFMCln5we6Z4CTt3wRq5eHmpK+sM1xx7OURejY7jZoi44IHBUNkM7 YjUQxPCxUrfQjSbtpVBT2TSU91gctsuocNdA/evf6PGfJZumgBJ3iDAumBftEWsZHkRx qRmdtW0wZP06W2ulXbS5q0htduTfMSto2/3ZsjlORZu+uWM/jv8bEt8z4D5TsCHnqf93 ie7g== X-Received: by 10.194.246.105 with SMTP id xv9mr64276537wjc.135.1436767464425; Sun, 12 Jul 2015 23:04:24 -0700 (PDT) Openpgp: id=AF6C170E59E8276568DD539A2B02A98D99BB3683; url=https://keybase.io/score_under X-Enigmail-Draft-Status: N1110 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.0.1 In-Reply-To: <55A33770.8080208@tlinx.org> X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2a00:1450:400c:c05::234 X-BeenThere: bug-bash@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Bug reports for the GNU Bourne Again SHell List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Xref: aioe.org gnu.bash.bug:11196 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --eQJveCsXgsrXsLkxQJL9LkLuhCarL5n8P Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 13/07/15 04:58, Linda Walsh wrote: >> [[ -v hash[defined_value] ]] || echo fail=20 > fail This one worked for me, both bare and in quotes. >> echo $BASH_VERSION > 4.2.45(1)-release I'm on 4.3.39(1)-release > This seems more messy and isn't -v supposed > to help clean up such things? >> [[ ${hash[defined_value]:-""} ]] || echo fail #it passes >> [[ ${hash[defined_value1]:-""} ]] || echo fail > fail In non-bash shells I will usually use [ -n "${var+x}" ], because it distinguishes between empty and unset variables. --eQJveCsXgsrXsLkxQJL9LkLuhCarL5n8P Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCAAGBQJVo1TQAAoJECsCqY2ZuzaDNx4P/3LoVBBXepHcwWc89LpCjPOf 4z8gLEIXr255KdDlxG/0RyRHOVwz6TdfH0jxdRZ/hoB+dnIlwktrh7MRLRUc3fIO doCnbE0iYovRH+BG2kNwsQ5erOmpA7n9SEBEwSq16uoRnx2GXDRLR+GZYPfbsUkM aCf81kkoIXSj6ek9PIK8exTuBTDmjIL+pnzd0qua4539Dc4bkP0gy4DTy9KqJk7s PfRYKQiDa4u7LmrK2du9/L63e61mEt0dZOsZIZpMvAfSf95NmJibEV32aWW/FhOS NvbGtCFkEw0Ovnbm/iVY9Y6/4CvJj3rU+XYh9O503kdkPgTzpgvD82m7JPG/rfyQ Iqz7stx9KsfNe6FBJ3PMCF3m9qQIeBL04JgX/lo1b0IiALc9lehcP51z1bqYvGy/ wtxq6cpu/DMmrjo/aSilQ11gGenR02fYEX5aHDwMedJZ6UNI400MS4qdXPjaU6ML xoSRJNNaZNgsT7gmGkiGxi6sGgzLHNuH2X48Md9Tyv72Cp/arH6KJmN+TMyWXqxv 9fsaMpxkEjTG0Q9sBi8T0QtGZS+CmujcnO1acyvV4zfTgKN8FmCfOqiJVsKjXKRl vi8TKywS3XaIX+L3shU+PeUg+rcMj4nbQOuO+O621gwH1Cm6hzgWT4/XPCZ06oQF Sy+ivpHvAIz48WqV+Dog =cslt -----END PGP SIGNATURE----- --eQJveCsXgsrXsLkxQJL9LkLuhCarL5n8P--