Quiero memorizar una matriz asociativa entre diferentes ejecuciones de script. Lo que tengo hasta ahora es que dado un archivo de texto que contiene un par clave / valor:
(
[james]=bond
)
Es un script para cargar eso en una matriz asociativa, agregarlo y luego repetirlo de una manera que se pueda redirigir a un segundo archivo:
#!/bin/bash
file=`cat $1`
key=$2
value=$3
declare -A row="$file"
row[$key]=$value
echo "("
for server in "${!row[@]}"
do echo "[$server]=${row[$server]}"; done
echo ")"
entonces puedo ejecutarlo como:
./arrays.sh file1 honey rider > file2 ; mv file2 file1
Dando
(
[james]=bond
[honey]=rider
)
Sin embargo, parece muy torpe. ¿Hay una forma más limpia de hacer esto?
arrays.bash...
declare -p hash > filepara guardar lahashmatriz asociativa.source filerestaurar.