Ajuda a corrigir código

PHP, Java, JavaScript, XML, XHTML, HTML, CSS, ASP, Delphi, Assembly, LaTeX, C, UML, Flash, Perl, SQL, Python, Zope, Pascal, WML. Se conhece mais de 3 siglas referidas, este é o forum para si.

Moderadores: Administradores, Moderadores

Ajuda a corrigir código

Mensagempor andrebarradas » Quinta Mai 06, 2010 18:26

boa tarde,

Código: Seleccionar todos

#!/usr/bin/perl -w
use strict;

#Verificar argumentos

if (@ARGV != 1) {die("Precisar de entrar um argumento,sendo ele uma directoria"$

#Verificar se o argumento é directoria

if (!-d $ARGV[0]) {die("O argumento não é directoria");}

#abertura da directoria

opendir(DIR,"$ARGV[0]") || die ("Erro ao abrir directoria");
my @dir = readdir(DIR);
chomp (@dir);
close (DIR);

my $fich;
my $emptyfile;

foreach my $i (@dir){

if ($i eq "."){next;}
if ($i eq ".."){next;}

    if (-f $i){

       $fich++;
        if (-z $i){
          $emptyfile++;
          print "$i é ficheiro vazio \n";


        }
   }

}

print " Total Ficheiros: $fich  \n  Total FichVazios: $emptyfile \n";



O exercicio é seguinte:
http://img179.imageshack.us/img179/6439/semttulokq.jpg

Se alguém me puder ajudar a corrigir este código agradecia.

Cumps,
André Barradas
andrebarradas
Aprendiz
Aprendiz
 
Mensagens: 56
Registado: Segunda Dez 28, 2009 15:06

Mensagempor andrebarradas » Sexta Mai 07, 2010 11:52

Ninguem pode ajudar por favor??
andrebarradas
Aprendiz
Aprendiz
 
Mensagens: 56
Registado: Segunda Dez 28, 2009 15:06

Mensagempor andrebarradas » Sexta Mai 07, 2010 12:39

fechem isto se quiserem...já vi que não teem tempo para ajudar
andrebarradas
Aprendiz
Aprendiz
 
Mensagens: 56
Registado: Segunda Dez 28, 2009 15:06

Mensagempor JoaoRosa » Sexta Mai 07, 2010 13:04

era fechar e banir-te... :)
Portátil: LG LW65-P4XP c/ upgrade: Seagate Momentus 7200.1 (2.5" IDE 7200rpm 80Gb) & 2x1GB Kingston PC 4200 533 MHz DDR2
Disco Externo: Caixa Point of View Hdd Enclosure 2.5" & Disco Fujitsu MHV2080AT (2.5" IDE 4200rpm 80Gb)
Avatar do Utilizador
JoaoRosa
Membro de Prata
Membro de Prata
 
Mensagens: 439
Registado: Quinta Nov 03, 2005 21:38
Localização: Oliveira de Azeméis

Mensagempor andrebarradas » Sexta Mai 07, 2010 13:05

JoaoRosa Escreveu:era fechar e banir-te... :)


insultei alguem?pelo menos ao dizer aquilo ja vi que pelo menos veem ler o topico.ja e bom sinal
andrebarradas
Aprendiz
Aprendiz
 
Mensagens: 56
Registado: Segunda Dez 28, 2009 15:06

Mensagempor JoaoRosa » Sexta Mai 07, 2010 13:12

A mim por exemplo.
Portátil: LG LW65-P4XP c/ upgrade: Seagate Momentus 7200.1 (2.5" IDE 7200rpm 80Gb) & 2x1GB Kingston PC 4200 533 MHz DDR2
Disco Externo: Caixa Point of View Hdd Enclosure 2.5" & Disco Fujitsu MHV2080AT (2.5" IDE 4200rpm 80Gb)
Avatar do Utilizador
JoaoRosa
Membro de Prata
Membro de Prata
 
Mensagens: 439
Registado: Quinta Nov 03, 2005 21:38
Localização: Oliveira de Azeméis

Mensagempor JoaoRosa » Sexta Mai 07, 2010 13:14

A mim por exemplo.
Portátil: LG LW65-P4XP c/ upgrade: Seagate Momentus 7200.1 (2.5" IDE 7200rpm 80Gb) & 2x1GB Kingston PC 4200 533 MHz DDR2
Disco Externo: Caixa Point of View Hdd Enclosure 2.5" & Disco Fujitsu MHV2080AT (2.5" IDE 4200rpm 80Gb)
Avatar do Utilizador
JoaoRosa
Membro de Prata
Membro de Prata
 
Mensagens: 439
Registado: Quinta Nov 03, 2005 21:38
Localização: Oliveira de Azeméis

Mensagempor andrebarradas » Sexta Mai 07, 2010 13:19

em vez de tarmos a discutir por uma coisa insignificante,não consegues ajudar-me com o perl por favor?
andrebarradas
Aprendiz
Aprendiz
 
Mensagens: 56
Registado: Segunda Dez 28, 2009 15:06

Mensagempor JoaoRosa » Sexta Mai 07, 2010 13:28

Tens o algoritmo correcto?
Tens a sintaxe correcta?
Portátil: LG LW65-P4XP c/ upgrade: Seagate Momentus 7200.1 (2.5" IDE 7200rpm 80Gb) & 2x1GB Kingston PC 4200 533 MHz DDR2
Disco Externo: Caixa Point of View Hdd Enclosure 2.5" & Disco Fujitsu MHV2080AT (2.5" IDE 4200rpm 80Gb)
Avatar do Utilizador
JoaoRosa
Membro de Prata
Membro de Prata
 
Mensagens: 439
Registado: Quinta Nov 03, 2005 21:38
Localização: Oliveira de Azeméis

Mensagempor andrebarradas » Sexta Mai 07, 2010 13:30

JoaoRosa Escreveu:Tens o algoritmo correcto?
Tens a sintaxe correcta?


Não dá erro nenhum.O que acontece é que ele não conta ficheiro nenhum,ou seja, ele mostra Total Ficheiros:0; TotalFichVazios:0

EDIT:Já descobri o erro.O unico problema dele é que nao estava a procurar na directoria escolhida pelo utlizador, ou seja, onde fiz if(-f $i) e onde diz if(-z $i) teria de ter if(-f $ARGV[0]/$i) e if(-z $ARGV[0]/$i) para ele puder procurar na directoria escolhida pelo utlizador.

Podem fechar o topico e obrigado pela NENHUMA ajuda dada.Espero que me possam ajudar no outro programa que estou a tentar resolver.
andrebarradas
Aprendiz
Aprendiz
 
Mensagens: 56
Registado: Segunda Dez 28, 2009 15:06


Voltar para Programação

Quem está ligado:

Utilizadores a ver este Fórum: Nenhum utilizador registado e 0 visitantes

cron