bug-bash
[Top][All Lists]
Advanced

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

Re: Associative array keys are not reusable in (( command


From: Léa Gris
Subject: Re: Associative array keys are not reusable in (( command
Date: Mon, 11 Jan 2021 15:50:40 +0100
User-agent: Telnet/1.0 [tlh] (PDP11/DEC)

Le 11/01/2021 à 15:42, Léa Gris écrivait :
Declare an integer associative array instead:

echo "$BASH_VERSION"
5.0.17(1)-release
declare -Ai aa
x='y[$(date >&2)0]'
aa[$x]=1
declare -p aa
declare -Ai aa=(["y[\$(date >&2)0]"]="1" )
aa[$x]+=1
declare -p aa
declare -Ai aa=(["y[\$(date >&2)0]"]="2" )

And forgot one more safe use of arithmetic expression:

safe_arith_index=${x@Q}
declare -p safe_arith_index
declare -- safe_arith_index="'y[\$(date >&2)0]'"
(( aa[$safe_arith_index]++ ))
declare -p aa
declare -Ai aa=(["y[\$(date >&2)0]"]="3" )

--
Léa Gris




reply via email to

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