Eu quero memorizar uma matriz associativa entre diferentes execuções de script. O que tenho até agora é que, dado um arquivo de texto contendo um par de chave / valor:
(
[james]=bond
)
É um script para carregar isso em um array associativo, adicioná-lo e repeti-lo de uma maneira que possa ser redirecionada para um segundo arquivo:
#!/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 ")"
então eu posso executá-lo como:
./arrays.sh file1 honey rider > file2 ; mv file2 file1
Dando
(
[james]=bond
[honey]=rider
)
No entanto, parece muito desajeitado. Existe uma maneira mais limpa de fazer isso?
arrays.bash...
declare -p hash > filepara salvar ahashmatriz associativa.source filerestaurar.