Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > gnu.bash.bug > #16319
| Path | csiph.com!goblin2!goblin1!goblin.stu.neva.ru!usenet.stanford.edu!not-for-mail |
|---|---|
| From | Luiz Angelo Daros de Luca <luizluca@gmail.com> |
| Newsgroups | gnu.bash.bug |
| Subject | test -v with array elements |
| Date | Fri, 29 May 2020 17:00:54 -0300 |
| Lines | 47 |
| Approved | bug-bash@gnu.org |
| Message-ID | <mailman.651.1590782471.2541.bug-bash@gnu.org> (permalink) |
| References | <CAJq09z4cbksdvTmvZPRryLiLaB34G18ZM9ORECLMoExX2RxjgQ@mail.gmail.com> |
| NNTP-Posting-Host | lists.gnu.org |
| Mime-Version | 1.0 |
| Content-Type | text/plain; charset="UTF-8" |
| X-Trace | usenet.stanford.edu 1590782473 18683 209.51.188.17 (29 May 2020 20:01:13 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=20161025; h=mime-version:from:date:message-id:subject:to; bh=WKdLO7zPOsCeu6rB0DiZyzBIIY4H7L5PNQTdQN446eQ=; b=d+ZRp5iJd9a7HqoKoIiZFYIt1lhW48/1S6vaK9EQcQXVZpk4O5Tilw/U/mG/c2ECak 4lK7TJgu9zUjo+A8OSBpxCMbz98MJ2V0ZBOORDbebbVeFM5I9GgZrY0RIx/4gLfNffI5 7rUqYTx/pDcxvpJJq4fOulPQeSDfxgURKG4u9EiPw7ody1XkGKku900S+wsFwKtHFLsT vmoLx7dbyIsE0h/cSW6fdlX9dVwOQHU59Cxyfphij3wVRh2lNXxBj5tOx2oxosPYAvoW /VR+550kIM2RAAX0to16YqRgUXYTCT9EqNIW5bACZMqQOY8N7qbmv00uBtQuW22/OlQs wyIg== |
| X-Google-DKIM-Signature | v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=WKdLO7zPOsCeu6rB0DiZyzBIIY4H7L5PNQTdQN446eQ=; b=BJwYnqVwoQoHGEPs+brsWpmI6yukJtFeG2nNbydNGqkNnTeQJf976OdPbCP8r0YwZS vSinSMixnT0sKjy2pMlCcGcplDebG/0So8rX1o1mOtpYSkMItppFva/BsRCRRudcW547 wfc9TYrWBPvjrPtKc3ws0As/njQzeQuizsQHRrZ0axHnv4zXnd7loDWQXK95bWKnONGk eRXGWq4kQOcZDWhxoxJUm4ztlIQ0qGQ96to8drYW3NZvDxa3asDA7x5FSyu9WUryCWaL eMcVb+PQ/Vyf/oRXqOioUWYlgnkTS2TzUMpDAuwiHx20C35QncJodUWt4WDTjuLtwXJ5 wvLw== |
| X-Gm-Message-State | AOAM532UY176U1vkyexEp9dLwY6drP1ZFQhyWIfXHsjguIB4Rw0CqJ14 JAr4FHbJl//oRBupmLGjdpxQsBjO5Emwi4rq2hmh8foo4OM= |
| X-Google-Smtp-Source | ABdhPJzhzoAG2h5x6eQ+N7uOnISRtPDNPZkw2vr8+H89B2slpwBdKHalTixOR/cPaio5pGvxgbl7poU96FpSTydCB+4= |
| X-Received | by 2002:a65:5285:: with SMTP id y5mr10207919pgp.271.1590782465832; Fri, 29 May 2020 13:01:05 -0700 (PDT) |
| Received-SPF | pass client-ip=2607:f8b0:4864:20::52b; envelope-from=luizluca@gmail.com; helo=mail-pg1-x52b.google.com |
| X-detected-operating-system | by eggs.gnu.org: No matching host in p0f cache. That's all we know. |
| X-Spam_score_int | -20 |
| X-Spam_score | -2.1 |
| X-Spam_bar | -- |
| X-Spam_report | (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001 autolearn=_AUTOLEARN |
| X-Spam_action | no action |
| X-BeenThere | bug-bash@gnu.org |
| X-Mailman-Version | 2.1.23 |
| Precedence | list |
| List-Id | Bug reports for the GNU Bourne Again SHell <bug-bash.gnu.org> |
| List-Unsubscribe | <https://lists.gnu.org/mailman/options/bug-bash>, <mailto:bug-bash-request@gnu.org?subject=unsubscribe> |
| List-Archive | <https://lists.gnu.org/archive/html/bug-bash> |
| List-Post | <mailto:bug-bash@gnu.org> |
| List-Help | <mailto:bug-bash-request@gnu.org?subject=help> |
| List-Subscribe | <https://lists.gnu.org/mailman/listinfo/bug-bash>, <mailto:bug-bash-request@gnu.org?subject=subscribe> |
| X-Mailman-Original-Message-ID | <CAJq09z4cbksdvTmvZPRryLiLaB34G18ZM9ORECLMoExX2RxjgQ@mail.gmail.com> |
| Xref | csiph.com gnu.bash.bug:16319 |
Show key headers only | View raw
Hello,
While using test -v, I noticed that it returns false when I use it
with a sparse or empty array. I need to add [@] or [index] to have it
return true.
Is this expected? If so, it is not documented. It only has:
"True if the shell variable varname is set (has been assigned a value)."
I'm using GNU bash, version 5.0.16(1)-release (x86_64-pc-linux-gnu)
$ A=()
$ test -v A || echo not defined
not defined
Should it?
$ A=(x)
$ test -v A || echo not defined
OK
$ A=()
$ A[1]=1
$ test -v A || echo not defined
not defined
Should it? 'test -v A' is equivalent to 'test -v A[0]'
$ test -v A[1] || echo not defined
$ test -v A[2] || echo not defined
not defined
if index is specified, it would be ok to have it return false. It
would be a better way to test if an array contains a value (other than
variable expansion).
$ test -v A[@] || echo not defined
This only fails when A is an empty array, which might be correct.
Regards,
---
Luiz Angelo Daros de Luca
luizluca@gmail.com
Back to gnu.bash.bug | Previous | Next | Find similar
test -v with array elements Luiz Angelo Daros de Luca <luizluca@gmail.com> - 2020-05-29 17:00 -0300
csiph-web