[Cascavel-pm] saber se o arquivo está aberto

Nelson Ferraz nferraz em gmail.com
Terça Setembro 4 06:45:15 PDT 2007


Em Sep 4, 2007, às 2:29 PM, Flavio Bei escreveu:

> outro problema, sei que deve ser besteira.. mas não achei a solução...
> alguém tem idéia do que pode ser?
>
> eu estava testando o programa rodando na mesma pasta dos arquivos,
> agora eu to tentando jogar o sistema em uma pasta qualquer e chamar os
> arquivos, até ai blz, mas não ta funcionando,... não sei o que pode
> ser, mas ele não acha o caminho....
>
> o código é esse:
>
> #===============================================
> use strict;
> use warnings;
> my $caminho = '/home/flavio/upload/';
>
> opendir( DIR, $caminho ) || die "Não pude abrir o diretorio $!\n";
> my @files = readdir( DIR );
> closedir( DIR );
>
> foreach( @files ){
>
>    my $f =  $_;
>    if (lc(substr($f, -3,3)) eq "txt"){	
>    my $o =  `/sbin/fuser $f`;

Será que não faltou o caminho antes do nome do arquivo?

foreach my $filename ( @files ) {
	next if $filename !~ /\.txt$/i; # poderia ter feito um grep antes,  
ou usado um glob

	my $o = `/sbin/fuser $caminho/$filename`;

(A propósito... procure escolher nomes de variáveis melhores, como  
"$filename" ao invés de "$f", e... sei lá o que você estava pensando,  
ao invés de "$o".)

[]s

Nelson



Mais detalhes sobre a lista de discussão Cascavel-pm