Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > gnu.bash.bug > #14474

Assignment of $* to a var removes spaces on unset IFS.

Path csiph.com!xmission!news.snarked.org!news.linkpendium.com!news.linkpendium.com!panix!usenet.stanford.edu!not-for-mail
From Bize Ma <binaryzebra@gmail.com>
Newsgroups gnu.bash.bug
Subject Assignment of $* to a var removes spaces on unset IFS.
Date Mon, 13 Aug 2018 11:51:08 -0400
Lines 43
Approved bug-bash@gnu.org
Message-ID <mailman.5062.1534175473.1292.bug-bash@gnu.org> (permalink)
NNTP-Posting-Host lists.gnu.org
Mime-Version 1.0
Content-Type text/plain; charset="UTF-8"
X-Trace usenet.stanford.edu 1534175474 21089 208.118.235.17 (13 Aug 2018 15:51:14 GMT)
X-Complaints-To action@cs.stanford.edu
To Chet Ramey <chet.ramey@case.edu>, bug-bash <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=5fdIvoaL+Qvtb3btEWN4ZTshkTuyIadwg4gYAY5iH1Q=; b=gZ8qpR0TOjjt7xMHDbcrKqd62CBtCcmGn1h28Rd0v1p1vwdkdDecgRDOCrDDi9AY3/ qf4WZW4BiIa1kW6pv0oQco84K5ZCeuJ66H1LIRIbyCTou7UbZKZ1jDnygxnVmWDCy3AI ojjB8koa1RmgPmaULJm0S9jBSBFUOYczHuXQSpqdfWXZ9abakdWwGriUymyeWx/1Ldpi oLaeWe/xCsbF8fqowZYruAU6BW/8Q9pKK7kxO3Q0vgNe+9tbb0gqn7dFky9G2gspEN0h NwUu+lf8QyqLuXZkFcNKrIhFczXKYVLCRYxZq3FkoefG4MPA0iN2u2guYemhSWVv1I2Y JF+w==
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=5fdIvoaL+Qvtb3btEWN4ZTshkTuyIadwg4gYAY5iH1Q=; b=IkJVuqAIMQOR3Wf8/1/iGtjSzxdT7OgwGJROz7anKsub3DAg1QTMTX44HQyNwf/wjR e03imQNTUlOdlR+id1vCnr3uIjtbWjIG+/yiwnvbDJtJrlEZ/KdHzhWGqm5Dven/Jj69 8rBVfdZjWgGhpn/wZh5kwv0HHtjOgq+8XhzCf6kh+BNYRCy0vQFN0TLylMTUuTvjhb9s 73gWc4vMxgabroWaiWbKI9QDkuSNRwsnUz+vbGHN0Zm3scYQpc4/yq6WR7EmsxsTjo/5 GSu1ZufgLQ2PqsxeHntc4hWGDM11klxG+4sfERmDCXkqNTpRcyPmABM/2+MpquRJ6tjB HuTw==
X-Gm-Message-State AOUpUlHCQt2c7s6zg9YcngXojzsPKrXoWKUFT4pN/bDh7ZrAkH+KaH2u mQhg1Wj89Txe2j4y2Heh1oPVSO19q2pEm/hm5kw=
X-Google-Smtp-Source AA+uWPzRFD0FrWQ+RaLWrf+0XO9O0rMk0lFlP3RKyTT1pktEVa0a4oQnJi8vprKyKNUpssgtsAUhGwNatlx5uOh19gs=
X-Received by 2002:aca:c602:: with SMTP id w2-v6mr19830445oif.122.1534175468659; Mon, 13 Aug 2018 08:51:08 -0700 (PDT)
X-detected-operating-system by eggs.gnu.org: Genre and OS details not recognized.
X-Received-From 2607:f8b0:4003:c06::22a
X-Content-Filtered-By Mailman/MimeDel 2.1.21
X-BeenThere bug-bash@gnu.org
X-Mailman-Version 2.1.21
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 <http://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>
Xref csiph.com gnu.bash.bug:14474

Show key headers only | View raw


Executing this code:

    set -- "  foo  "    "  bar  baz  "  "  quux  "
    unset IFS
    a=$*
    b="$*"
    printf '[%s]' "$a" "$b"; echo

Leads to this results in several shells:

ash             : [  foo     bar  baz     quux  ][  foo     bar  baz
quux  ]
dash            : [  foo     bar  baz     quux  ][  foo     bar  baz
quux  ]
b205sh          : [  foo     bar  baz     quux  ][  foo     bar  baz
quux  ]
b30sh           : [  foo     bar  baz     quux  ][  foo     bar  baz
quux  ]
b32sh           : [  foo     bar  baz     quux  ][  foo     bar  baz
quux  ]
b41sh           : [  foo     bar  baz     quux  ][  foo     bar  baz
quux  ]
b42sh           : [  foo     bar  baz     quux  ][  foo     bar  baz
quux  ]
b43sh           : [foo bar baz quux][  foo     bar  baz     quux  ]
b44sh           : [foo bar baz quux][  foo     bar  baz     quux  ]
bash            : [foo bar baz quux][  foo     bar  baz     quux  ]
posixbash       : [foo bar baz quux][  foo     bar  baz     quux  ]
lksh            : [  foo     bar  baz     quux  ][  foo     bar  baz
quux  ]
mksh            : [  foo     bar  baz     quux  ][  foo     bar  baz
quux  ]
ksh93           : [  foo     bar  baz     quux  ][  foo     bar  baz
quux  ]
attsh           : [  foo     bar  baz     quux  ][  foo     bar  baz
quux  ]
zsh             : [  foo     bar  baz     quux  ][  foo     bar  baz
quux  ]


Bash since 4.3 fails to follow what the documentation describes as that on
an assignment
values do not undergo splitting or globing.

Back to gnu.bash.bug | Previous | Next | Find similar | Unroll thread


Thread

Assignment of $* to a var removes spaces on unset IFS. Bize Ma <binaryzebra@gmail.com> - 2018-08-13 11:51 -0400

csiph-web