Le 21/08/2021 à 00:06, Chet Ramey écrivait :
On 8/19/21 6:37 AM, Léa Gris wrote:

#!/usr/bin/env bash

declare -A assoc=(
  [P]=piano
  [TB]='foldable table'
  ['CH AIR']=chair
)

options=("${assoc[@]@K}")

The best way to clone an associative array is:

declare -A options
eval options=\( "${assoc[@]@K}" \)

The quoting @K performs is eval-safe.


Although I was not attempting to clone the Associative array but turn it into a flat array with interleaved key and value each as own element.

options=(
 key
 value
 next key
 next value
 ...k
 ...v
)

--
Léa Gris


Reply via email to