Rudolfo, além do exibicionismo dos nossos amigos eu acredito que posso realizar algus comentário que podem ajudar nos próximos códigos ... afinal nem sempre vc poderá colocar estes códigos loucos no meio do seu programa ;)
<br><br>
<div><span class="gmail_quote">On 11/21/06, <b class="gmail_sendername">Rudolfo rosa</b> &lt;<a href="mailto:rudolforosa@gmail.com">rudolforosa@gmail.com</a>&gt; wrote:</span></div>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">Galera,<br>minha primeira duvida: Como deletar a linha atual de um arquivo ??<br>Eu achei uma solucao, mas acredito que nao eh a melhor.
<br><br>#!/usr/local/bin/perl<br><br>$file = arq; #arq tem 4 linhas contendo a b c d<br>$new = &quot;$file.tmp.$$&quot;;<br><br>open(LOGS, $file) or die;<br>@log=&lt;LOGS&gt;;<br>close(LOGS);</blockquote>
<div>&nbsp;</div>
<div>Evite colocar o conteúdo do arquivo num array desta maneira... a menos que vc tenha <strong>CERTEZA</strong> de que o tamanho o arquivo será sempre pequeno.</div>
<div>&nbsp;</div>
<div>Eu recomendo algo como :</div>
<div>&lt;code&gt;</div>
<div><font face="courier new,monospace">open LOGS, $file&nbsp;or die &quot;Nao consegui abrir o arquivo $file\n&quot; # afinal mensagem </font><font face="courier new,monospace">clara é sempre bom</font></div>
<div><font face="Courier New">open NEW, &quot;&gt; $new&quot; or die &quot;can't open $new: $!&quot;;</font></div>
<div><font face="Courier New"></font>&nbsp;</div>
<div><font face="Courier New"># cria um loop lendo todo o arquivo</font></div>
<div><font face="Courier New">while ( my $line&nbsp;= &lt;LOGS&gt; ) {</font></div>
<div><font face="Courier New">&nbsp;&nbsp; print NEW, $line if (&nbsp;$<font face="Courier New">line&nbsp;!= /d/ );</font></font></div>
<div><font face="Courier New">}</font></div>
<div><font face="Courier New"></font>&nbsp;</div>
<div><font face="Courier New">close LOGS;</font></div>
<div><font face="Courier New">close NEW;</font></div>
<div><font face="Courier New"></font>&nbsp;</div>
<div><font face="Courier New">rename ($new, $file)&nbsp;or die &quot;can't rename $new to $old: $!&quot;;</font></div>
<div><font face="Courier New"></font>&nbsp;</div>
<div>&lt;/code&gt;</div>
<div><br>&nbsp;</div>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">foreach $l (@log){<br>#print &quot;current $l&quot;;<br>$i++;<br>if ($l =~ /d/){<br>delete @log[$i-1];<br>
}<br>}<br>open(NEW, &quot;&gt; $new&quot;)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; or die &quot;can't open $new: $!&quot;;<br>foreach $l (@log){<br>print NEW $l;<br>}<br>close(NEW);<br>rename($new, $file)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;or die &quot;can't rename $new to $old: $!&quot;;
<br><br>Obrigado, Rudolfo.<br>_______________________________________________<br>SaoPaulo-pm mailing list<br><a href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br><a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm">
http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br></blockquote><br>