bash
ainda não possui arrays multidimensionais. Apenas ksh93
faz.
Aqui, você pode usar uma estrutura do tipo csv e nem precisa usar matrizes:
#! /bin/sh -
gws="\
foo,1.1.1.12,1::1
blah,2.2.2.2,2::2"
while IFS=, read name ip4 ip6; do
echo something with "$name" "$ip4"...
done << E
$gws
E
(você nem precisa de bash)
com ksh93
:
gws=(
(name=foo ip4=1.1.1.1 ip6=1::1)
(name=blah ip4=2.2.2.2 ip6=1::2)
)
printf '%s\n' "${gws[0].name}"