Pessoal,<div><br></div><div>   Primeiro, muito obrigado pela ajuda até aqui.</div><div><br></div><div>   Bom, testei todas as dicas que não envolviam instalação de módulos. Em principio gostei bastante do DB_File que o Eden sugeriu, pelo fato de que se no futuro eu precisar manter os dados, e só dar um nome pro arquivo.</div>
<div><br></div><div>   Nos dois exemplos esbarrei nas mesmas dificuldades, vou colocar o código usando hash com o Marcio sugeriu pq tá mais organizado.</div><div><br></div><div><div>use strict;</div><div>use warnings;</div>
<div><br></div><div>$|=1;</div><div><br></div><div># Inicializa</div><div>my $canais = {</div><div>    canal_1 => {slot => 1, nome => "Canal 1", eqp => "ed871p09j4", ativo => 1, nerros => 0, ntotal => 0, ulterro => ""},</div>
<div>    canal_2 => {slot => 2, nome => "Canal 2", eqp => "ed871p09j4", ativo => 1, nerros => 0, ntotal => 0, ulterro => ""},</div><div>    canal_3 => {slot => 1, nome => "Canal 3", eqp => "ed871p09j5", ativo => 1, nerros => 0, ntotal => 0, ulterro => ""},</div>
<div>    canal_4 => {slot => 3, nome => "Canal 4", eqp => "ed871p09j2", ativo => 1, nerros => 0, ntotal => 0, ulterro => ""}</div><div>};</div><div><br></div><div># Inserir</div>
<div>$canais->{"canal_5"} = {slot => 0, nome => "Canal 5", eqp => "ed871p09j6", ativo => 0, nerros => 3, ntotal => 7, ulterro => "2013-03-12 20:34:12"};</div>
<div><br></div><div># Excluir</div><div>delete $canais->{"canal_3"};</div><div><br></div><div># Lista os dados</div><div>foreach my $registro (keys %$canais) {</div><div>    print "$registro\n";</div>
<div>    print "Nome.: $canais->{$registro}{'nome'}\n";</div><div>    print "Slot.: $canais->{$registro}{'slot'}\n";</div><div>    print "Eqp..: $canais->{$registro}{'eqp'}\n";</div>
<div>    print "Ativo: $canais->{$registro}{'ativo'}\n";</div><div>    print "Erros: $canais->{$registro}{'nerros'}\n";</div><div>    print "Total: $canais->{$registro}{'ntotal'}\n";</div>
<div>    print "UltEr: $canais->{$registro}{'ulterro'}\n";</div><div>    print "---------------\n";</div><div>}</div></div><div><br></div><div>   Bom, as dúvidas e dificuldades são:</div><div>
   1. Como faço para alterar um "registro" sem precisar informar todas as "colunas"? P.e.: $canais->{"canal_2"} = {ativo => 0}; não dá erro, só que "perco" os outros dados (Nome, Eqp, Slot, etc);</div>
<div>   2. Como pesquiso? P.e., como saber se já existe o "canal_8".</div><div>   3. Qual a ordem do hash? Tem como ordenar? Não é um problema a ordem "aleatória" que ele fica, isso é mais por curiosidade.</div>
<div>   4. No foreach eu estou percorrendo todos os "registro" e imprimindo o valor das "colunas", uma a uma. Tem como fazer um "foreach" na "colunas" do "registro" e imprimir Nome_Da_Coluna = Valor_Da_Coluna?</div>
<div><br></div><div><br>[...]'s<br><br>Marcio
</div>