<html>
<head>
<style>
P
{
margin:0px;
padding:0px
}
body
{
FONT-SIZE: 10pt;
FONT-FAMILY:Tahoma
}
</style>
</head>
<body>Putamplexos!<BR>Caraca!!! pra enteder essa sua rotina inteira<BR>so daqui uns 3 meses..rsrs<BR>lembra ainda sou basico...rs<BR>como estou mesmo precisando de ajuda...<BR>segui seu conselho<BR>
<BR>
> Leia sobre o opendir e readding nas man-pages do Perl:<BR>> <BR>> perldoc -f opendir<BR>
depois de ler e furtar uns pedaços de scripts...rs<BR>
montei esse script<BR>
<BR>
******************<BR>
#!perl <BR>#!/usr/bin/perl<BR>
<BR>opendir my $dir, <FONT style="BACKGROUND-COLOR: #ff6600">"img"</FONT> or die "Problemas ao abrir diretorio: $!";<BR>my @fotos = grep <FONT style="BACKGROUND-COLOR: #3366ff">{ /\.(?:jpg)$/i }</FONT> readdir $dir; <BR>closedir $dir or die "Problemas ao fechar diretorio: $!";<BR>$vFotos = join("|",@fotos);<BR>
<BR>
print "Content-type: text/html\n\n"; <BR>print "fotos=", $vFotos;<BR>
<BR>
**************<BR><BR>funciono redonda no meu pc...<BR>mas quando jogo no provedor <BR> da zica...<BR>
porq? ele nao acha o caminho...<BR>
<BR>
opendir my $dir, <FONT style="BACKGROUND-COLOR: #ff6600">"img"</FONT> #nao funciona no provedor nem no meu pc porq? a pasta "img" nao esta dentro da pasta "CGI-BIN"<BR>
<BR>
a pasta <BR>
cgi-bin=> esta dentro Apache2\<BR>
portifolio=> tbm esta dentro Apache2\<BR>
/img=> e uma sub pasta dentro da portifolio<BR>
<BR>
opendir(DR,"C:\\Apache2\\portifolio\\img"); #assim funciona no meu PC, so nao sei como seria no provedor..rsrs<BR>
<BR>
opendir(DR,"\\portifolio\\img"); #assim tbm funciona no meu PC se dentro da pasta CGI-BIN possuir uma copias das pastas de img, como essas pasta estao fora da CGI_BIN no provedor porq? uso uma outra programação no Flash nao funciona o script em perl...rsrs<BR>
????????<BR>alguem poderia me ajudar???<BR>
preciso que esse opendir entenda o caminho no provedor "usa Linux"...rs<BR>
<A href="file://\\portifolio\\img">\\portifolio\\img</A>"); <BR>
<BR>
Valeuuuu<BR>
<BR>Sávio Padaw Perl -nivel Chewbacca<BR>
<BR>
ps"<BR>
grep <FONT style="BACKGROUND-COLOR: #3366ff">{ /\.(?:jpg)$/i }</FONT> readdir $dir; #caraca adorei essa rotina!!!, demorei muita pra enteder esse if ai dentro mas e muito LOCOOOOOOOOO!!! to gostando desse perl...rsrs<BR><BR><BR>
<HR id=stopSpelling>
<BR>
> From: luismottacampos@yahoo.co.uk<BR>> Date: Tue, 8 May 2007 09:54:08 +0200<BR>> To: saopaulo-pm@mail.pm.org<BR>> Subject: Re: [SP-pm] S.O.S<BR>> <BR>> On May 8, 2007, at 8:33 AM, Daniel Vinciguerra wrote:<BR>> > my @teste = system("dir *.jpg");<BR>> ><BR>> > print("@teste ");<BR>> ><BR>> > A grosso modo é um exemplo de como poderia ser feito...<BR>> > já que não entendi sua pergunta...<BR>> ><BR>> > Especifique mais oque quer e como está desenvolvendo seu projeto...<BR>> > Se possivel mande o codigo em que está com problemas para ficar<BR>> > melhor de ser analisado... =)<BR>> <BR>> <BR>> Daniel, de todas as soluções possíveis para o problema, você <BR>> escolheu a menos elegante, menos portável, a mais complicada.<BR>> <BR>> Para usar system(), você precisa garantir que o sistema <BR>> operacional do Sávio é conhecido (e, no seu caso, Janelous - argh!). <BR>> Depois, sempre que você chama um programa com system(), precisa <BR>> lembrar que o programa pode ter problemas para executar e vai setar <BR>> um monte de códigos de erro - que precisam ser tratados, ou vão matar <BR>> um programador louco. Se você não fizer estas coisas, está pedindo <BR>> encrenca, e o Perl vai se vingar de você. ;-)<BR>> <BR>> Sávio, por favor, se isto é trabalho de escola, eu gostaria de <BR>> saber. Não me incomoda nada ajudar pessoas que não sabem perl, mesmo <BR>> que seja para trabalho de escola. Mas não vou deixar ninguém sair <BR>> daqui se achando espertinho por que fez os "gurus" de Perl da cidade <BR>> de São Paulo escreverem o trabalho da faculdade dele.<BR>> <BR>> Soluções possíveis, elegantes e simples para o seu problema:<BR>> <BR>> 1. Use File::Find: (o script abaixo foi gerado pelo find2perl, <BR>> fácil e simples de usar).<BR>> <BR>> #! /usr/bin/perl -w<BR>> eval 'exec /usr/bin/perl -S $0 ${1+"$@"}'<BR>> if 0; #$running_under_some_shell<BR>> <BR>> use strict;<BR>> use File::Find ();<BR>> <BR>> # for the convenience of &wanted calls, including -eval statements:<BR>> use vars qw/*name *dir *prune/;<BR>> *name = *File::Find::name;<BR>> *dir = *File::Find::dir;<BR>> *prune = *File::Find::prune;<BR>> <BR>> sub wanted {<BR>> my ($dev,$ino,$mode,$nlink,$uid,$gid);<BR>> <BR>> (($dev,$ino,$mode,$nlink,$uid,$gid) = lstat($_)) &&<BR>> -f _ &&<BR>> /^.*\.JPG\z/s<BR>> && print("$name\n");<BR>> }<BR>> <BR>> # Traverse desired filesystems<BR>> File::Find::find({wanted => \&wanted}, '.');<BR>> exit;<BR>> __END__<BR>> <BR>> 2. Use globs:<BR>> <BR>> my @jpeg_files = glob( '*.JPG' );<BR>> <BR>> Isto não é recursivo, você precisa fazer outras vezes para listar <BR>> os demais diretórios.<BR>> <BR>> 3. Use opendir e readdir para ler os diretórios, e encontrar os <BR>> arquivos que você quer. Isto também não é recursivo, e tem a <BR>> desvantagem de precisar de tratamento de erros (diretórios podem dar <BR>> problemas ao serem abertos e fechados, é preciso que o programa saiba <BR>> o que fazer em caso de problemas. E isto também não lê sub diretórios <BR>> recursivamente.<BR>> <BR>> Leia sobre o opendir e readding nas man-pages do Perl:<BR>> <BR>> perldoc -f opendir<BR>> <BR>> perldoc -f readdir<BR>> <BR>> Espero que isso ajude.<BR>> Putamplexos!<BR>> --<BR>> Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer,<BR>> Perl fanatic evangelist, and amateur {cook, photographer}<BR>> <BR>> <BR>> _______________________________________________<BR>> SaoPaulo-pm mailing list<BR>> SaoPaulo-pm@pm.org<BR>> http://mail.pm.org/mailman/listinfo/saopaulo-pm<BR><BR><br /><hr />O Windows Live Spaces já chegou! É fácil criar o seu próprio Web site pessoal. <a href='http://spaces.live.com/signup.aspx' target='_new'>Veja só!</a></body>
</html>