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
por 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

-
- Mensagens: 56
- Registado: Segunda Dez 28, 2009 15:06
por andrebarradas » Sexta Mai 07, 2010 11:52
Ninguem pode ajudar por favor??
-
andrebarradas
- Aprendiz

-
- Mensagens: 56
- Registado: Segunda Dez 28, 2009 15:06
por andrebarradas » Sexta Mai 07, 2010 12:39
fechem isto se quiserem...já vi que não teem tempo para ajudar
-
andrebarradas
- Aprendiz

-
- Mensagens: 56
- Registado: Segunda Dez 28, 2009 15:06
por 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)
-

JoaoRosa
- Membro de Prata

-
- Mensagens: 439
- Registado: Quinta Nov 03, 2005 21:38
- Localização: Oliveira de Azeméis
por 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

-
- Mensagens: 56
- Registado: Segunda Dez 28, 2009 15:06
por 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)
-

JoaoRosa
- Membro de Prata

-
- Mensagens: 439
- Registado: Quinta Nov 03, 2005 21:38
- Localização: Oliveira de Azeméis
por 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)
-

JoaoRosa
- Membro de Prata

-
- Mensagens: 439
- Registado: Quinta Nov 03, 2005 21:38
- Localização: Oliveira de Azeméis
por 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

-
- Mensagens: 56
- Registado: Segunda Dez 28, 2009 15:06
por 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)
-

JoaoRosa
- Membro de Prata

-
- Mensagens: 439
- Registado: Quinta Nov 03, 2005 21:38
- Localização: Oliveira de Azeméis
por 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

-
- 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