Patty, para o teu 1o uso de hash ateh q funciona, mas tu estah usando o
hash de uma forma esquisita... hehehe. A tua solucao faz o que tu quer,
mas o teu codigo poderia ser melhorado um pouco. Tu pode setar 1 no
hash direto no while, eliminando assim totalmente a necessidade do
@arquivos, e do primeiro foreach. Sacou? ^_^<br>
Quanto a apagar os arquivos passando o nome deles para o unlink, a
moral eh tu armazenar informacoes uteis (os nomes dos arquivos) no
hash, ao inves de um mero '1', ou seja, um array. Dah uma lida em:<br>
<br>
perldoc perldsc<br>
<br>
em especial na secao &quot;HASHES OF ARRAYS&quot;, embora dar uma lida no
documento como um todo soh vai te trazer beneficios ;-) Mas nao se
assusta com o que tu nao entender. Eh importante ter em mente que o
conhecimento sempre eh absorvido em partes, e nao tudo de uma vez.
hehehehe :)<br>
<br>
Faz uns testes, altera teu codigo, vai fazendo as coisas aos poucos. ;-)<br>
Depois que tu tiver conseguido armazenar os nomes dos arquivos, e
remover eles, quando tu observar o programa um pouco melhor para ver o
que pode ser melhorado tu vai ver que a melhor solucao na verdade vai
ter quase o mesmo numero de linhas que antes de tu armazenar os nomes
dos arquivos. Se nao, manda aih as tuas evolucoes que eu te digo como
melhorar. ^_^<br>
<br>
Boa sorte. Sei que tu nao vai nos decepcionar. ;-)<br>
<br>
Abraco,<br>
&nbsp;&nbsp; Mauricio&nbsp;&nbsp; <br>
<br><div><span class="gmail_quote">On 7/14/06, <b class="gmail_sendername">Patty Silva</b> &lt;<a href="mailto:ptfzs@yahoo.com.br">ptfzs@yahoo.com.br</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div><br> Mauricio..<br> Fiz assim: e funcionou.. porem nao sei se eh a melhor forma:<br> <br> &lt;CODE&gt;<br> --------------------------------------------------------------------------------------------------------------------------------
<br> <span style="color: rgb(255, 0, 0);">#!/usr/bin/perl</span><br style="color: rgb(255, 0, 0);"> <span style="color: rgb(255, 0, 0);">#</span><br style="color: rgb(255, 0, 0);"> <span style="color: rgb(255, 0, 0);">my $caminho= &quot;$ENV{HOME}/perl&quot;;
</span></div><div><span class="q"><br style="color: rgb(255, 0, 0);"> <br style="color: rgb(255, 0, 0);"> <span style="color: rgb(255, 0, 0);">chdir ($caminho) || die &quot;\n *** Erro no diretorio $caminho ***&quot;;</span>
<br style="color: rgb(255, 0, 0);"> <br style="color: rgb(255, 0, 0);"> <span style="color: rgb(255, 0, 0);">while ($arquivo = &lt;*.txt&gt;)</span><br style="color: rgb(255, 0, 0);"> <span style="color: rgb(255, 0, 0);">
{</span><br style="color: rgb(255, 0, 0);"> <br style="color: rgb(255, 0, 0);"></span></div><div> <span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $arquivo=~ /(\d\d\d\d\d\d\d\d\d\d)/;</span><br style="color: rgb(255, 0, 0);">
 <span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $arquivo=$1;</span><br style="color: rgb(255, 0, 0);"> <span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; push(@arquivos,$arquivo);</span><br style="color: rgb(255, 0, 0);">
 <br style="color: rgb(255, 0, 0);"> <span style="color: rgb(255, 0, 0);">}</span><br style="color: rgb(255, 0, 0);"> <br style="color: rgb(255, 0, 0);"> <span style="color: rgb(255, 0, 0);"></span><span style="color: rgb(255, 0, 0);">
my %hash;</span><br style="color: rgb(255, 0, 0);"> <span style="color: rgb(255, 0, 0);">foreach (@arquivos)</span><br style="color: rgb(255, 0, 0);"> <span style="color: rgb(255, 0, 0);">{</span><br style="color: rgb(255, 0, 0);">
 <span style="color: rgb(255, 0, 0);">&nbsp; $hash{$_} = 1;</span><br style="color: rgb(255, 0, 0);"> <span style="color: rgb(255, 0, 0);">}</span><br style="color: rgb(255, 0, 0);"> <span style="color: rgb(255, 0, 0);">foreach (sort keys %hash)
</span><br style="color: rgb(255, 0, 0);"> <span style="color: rgb(255, 0, 0);">{</span><br style="color: rgb(255, 0, 0);"> <span style="color: rgb(255, 0, 0);">&nbsp; print &quot;$_\n&quot;;</span><br style="color: rgb(255, 0, 0);">
 <span style="color: rgb(255, 0, 0);">&nbsp; `cat $_* &gt;$_.txt`;<br>  </span><span style="color: rgb(255, 0, 0);">}</span><br style="color: rgb(255, 0, 0);"> <br> --------------------------------------------------------------------------------------------------------------------------------
<br> <br> <br> E outra coisa.. queria apagar os arquivos permanecendo somente o que eu concatenei.. :)<br> <br> <br> Obrigada pessoal</div><div><span class="q"><br> <br> <br> <br><br><b><i>Mauricio Utils &lt;<a href="mailto:msb.utils@gmail.com" title="mailto:msb.utils@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
msb.utils@gmail.com</a>&gt;</i></b> escreveu:</span></div><div><span class="e" id="q_10c6ea6ee8a66d0c_4"><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"> Tu pode criar um hash cuja chave seja o ANOMESDIA e o valor seja um array com os nomes dos arquivos.
<br> No laço, tu separa com split('_', $arquivo) onde o primeiro valor retornado eh o ANOMESDIA, que tu vai usar como chave no hash.<br> Depois de preenchido o hash, tu faz outro laço iterando as chaves do hash e chamando o teu comando. que tal? ;-)
<br> <br> &nbsp;&nbsp; Mauricio&nbsp;&nbsp; <br><br><div><span class="gmail_quote">On 7/13/06, <b class="gmail_sendername">Patty Silva</b> &lt;<a href="mailto:ptfzs@yahoo.com.br" title="mailto:ptfzs@yahoo.com.br" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
ptfzs@yahoo.com.br</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"> <div>Ola Pessoal..<br>Eu again! :)<br><br>Fiz um script para concatenar arquivo de um
 diretorio:<br><br>&lt;CODIGO&gt;<br>---------------------------------------------------------------------------------------------<br><span style="color: rgb(255, 0, 0);"> my $caminho= &quot;$ENV{HOME}/teste&quot;;</span>
<br style="color: rgb(255, 0, 0);"><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);">chdir ($caminho) || die &quot;\n *** Erro no diretorio $caminho ***&quot;; </span><br style="color: rgb(255, 0, 0);">
<br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);">while ($arquivo = &lt;*.txt&gt;)</span><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);"> {</span><br style="color: rgb(255, 0, 0);">
<br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);">&nbsp; $InFile= $caminho.$arquivo;</span><br style="color: rgb(255, 0, 0);"> <br style="color: rgb(255, 0, 0);"> <span style="color: rgb(255, 0, 0);">&nbsp;  push(@arquivos,$arquivo);
</span><br style="color: rgb(255, 0, 0);"><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);">}</span><br style="color: rgb(255, 0, 0);"><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);">
 system(`cat @arquivos&gt;&gt;$data_out.tmp`);</span><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);">unlink(@arquivos);</span><br><br>--------------------------------------------------------------------------------------------- 
<br><br>Porem quero concatenar arquivos com a msm data ou seja, <br>os nomes dos arquivos sao ANOMESDIAHORA_tipo.txt<br>Quero concatenar arquivos com ANOMESDIAHORA iguais.. e gerar somente um ANOMESDIA.txt <br><br>Se alguem puder me dar uma lUz :) 
<br><br>Obrigada<br></div><div><span><img><br><br><br><div>    </div><hr size="1">  Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. <a href="http://us.rd.yahoo.com/mail/br/tagline/mobile_alerts/*http://br.mobile.yahoo.com/mailalertas/" title="http://us.rd.yahoo.com/mail/br/tagline/mobile_alerts/*http://br.mobile.yahoo.com/mailalertas/ (http://us.rd.yahoo.com/mail/br/tagline/mobile_alerts/*http://br.mobile.yahoo.com/mailalertas/)" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
 Registre seu aparelho agora!</a> <div></div></span></div><br>_______________________________________________<br>PortoAlegre-pm mailing list<br><a href="mailto:PortoAlegre-pm@pm.org" title="mailto:PortoAlegre-pm@pm.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
PortoAlegre-pm@pm.org </a><br><a href="http://mail.pm.org/mailman/listinfo/portoalegre-pm" title="http://mail.pm.org/mailman/listinfo/portoalegre-pm" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
http://mail.pm.org/mailman/listinfo/portoalegre-pm</a><br><br></blockquote></div> <br> _______________________________________________<br>PortoAlegre-pm mailing list<br><a href="mailto:PortoAlegre-pm@pm.org" title="mailto:PortoAlegre-pm@pm.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
PortoAlegre-pm@pm.org</a><br><a href="http://mail.pm.org/mailman/listinfo/portoalegre-pm" title="http://mail.pm.org/mailman/listinfo/portoalegre-pm" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://mail.pm.org/mailman/listinfo/portoalegre-pm
</a></blockquote><br></span></div><div><p> 
                </p><hr size="1"></div><div><span class="q"> 
Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. <a href="http://us.rd.yahoo.com/mail/br/tagline/mobile_alerts/*http://br.mobile.yahoo.com/mailalertas/" title="http://us.rd.yahoo.com/mail/br/tagline/mobile_alerts/*http://br.mobile.yahoo.com/mailalertas/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
Registre seu aparelho agora!</a>
</span></div><div><p></p></div><br>_______________________________________________<br>PortoAlegre-pm mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:PortoAlegre-pm@pm.org">PortoAlegre-pm@pm.org
</a><br><a onclick="return top.js.OpenExtLink(window,event,this)" href="http://mail.pm.org/mailman/listinfo/portoalegre-pm" target="_blank">http://mail.pm.org/mailman/listinfo/portoalegre-pm</a><br><br></blockquote></div>
<br>