help-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: why fail , [[ $sep$*$sep == $sep--$sep ]]


From: Kerin Millar
Subject: Re: why fail , [[ $sep$*$sep == $sep--$sep ]]
Date: Sun, 18 Feb 2024 14:03:08 +0000

On Sun, 18 Feb 2024 15:01:17 +0100
alex xmb sw ratchev <fxmbsw7@gmail.com> wrote:

> On Sun, Feb 18, 2024, 14:51 Kerin Millar <kfm@plushkava.net> wrote:
> 
> > On Sun, 18 Feb 2024 14:34:43 +0100
> > alex xmb sw ratchev <fxmbsw7@gmail.com> wrote:
> >
> > > On Sun, Feb 18, 2024, 14:18 Kerin Millar <kfm@plushkava.net> wrote:
> > >
> > > > On Sat, 17 Feb 2024 17:01:13 +0100
> > > > alex xmb sw ratchev <fxmbsw7@gmail.com> wrote:
> > > >
> > > > > oh i know why it failed
> > > > > set interprets the first -- away
> > > >
> > > > That is not why it is failing to behave as you expect. Rather, the
> > issue
> > > > is that your conditional expression is incorrect. It should be [[
> > "$f$*$f"
> > > > == *"$f--$f"* ]]. Note that you have chosen to change the value of
> > IFS. It
> > > > is important that you do not omit the quotes - not even for the left
> > hand
> > > > side of the expression!
> > > >
> > >
> > > i thought there is a ' flat left side of == '
> >
> > Unfortunately, the raw output of xtrace is not much use for human
> > eyeballs. Here's the exact difference.
> >
> > $ ( set aa bb cc -- dd; f=$'\1' IFS=$f PS4= BASH_XTRACEFD=1; set -x; [[
> > "$f$*$f" == *"$f--$f"* ]] ) | hexdump -C
> > 00000000  5b 5b 20 01 61 61 01 62  62 01 63 63 01 2d 2d 01  |[[
> > .aa.bb.cc.--.|
> > 00000010  64 64 01 20 3d 3d 20 2a  01 5c 2d 5c 2d 01 2a 20  |dd. ==
> > *.\-\-.* |
> > 00000020  5d 5d 0a                                          |]].|
> >
> > $ ( set aa bb cc -- dd; f=$'\1' IFS=$f PS4= BASH_XTRACEFD=1; set -x; [[
> > $f$*$f == *"$f--$f"* ]] ) | hexdump -C
> > 00000000  5b 5b 20 61 61 62 62 63  63 2d 2d 64 64 20 3d 3d  |[[ aabbcc--dd
> > ==|
> > 00000010  20 2a 01 5c 2d 5c 2d 01  2a 20 5d 5d 0a           | *.\-\-.* ]].|
> >
> > Of course, you needed the asterisk characters in the pattern too.
> >
> 
> ah ye =p unfinished inhead code
> 
> question , what should these hexdumps show

Why IFS matters and why quotes are important.

-- 
Kerin Millar



reply via email to

[Prev in Thread] Current Thread [Next in Thread]