Jump to content


Photo

Zipando Arquivos No Servidor.


  • Faça o login para participar
24 replies to this topic

#1 jgcl

jgcl

    João Gabriel C. Laass, Serra/ES

  • Usuários
  • 559 posts
  • Sexo:Não informado
  • Localidade:Serra / ES
  • Interesses:Tudo!

Posted 17/10/2004, 20:25

Fala pessoal, beleza?

Alguém ai conheçe algum módulo que zipa uma pasta inteira ou somente alguns arquivos no servidor?

Um abraço,
João Gabriel
João Gabriel
Site >> joaogabriel.org
CGiClube.net >> http://www.cgiclube.net
Vitória Perl Mongers >> http://vitoria.pm.org

#2 Whitesnake

Whitesnake
  • Visitantes

Posted 17/10/2004, 22:09

Usa o Tie Gzip

#3 Hospedar-se .Com

Hospedar-se .Com

    Super Veterano

  • Usuários
  • 1500 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 17/10/2004, 23:45

TAR:
tar -cvzf nome.tar.gz pastas arquivos etc


ZIP:
zip -r nome.zip arquivos pastas etc


O tar compacta melhor e é mais rápido

#4 jgcl

jgcl

    João Gabriel C. Laass, Serra/ES

  • Usuários
  • 559 posts
  • Sexo:Não informado
  • Localidade:Serra / ES
  • Interesses:Tudo!

Posted 18/10/2004, 15:23

1. Ae Whitesnake, tem como você me passar um código prátido do funcionamento desses códigos?


2. AÊ Mid, se eu usar esse comando o servidor precisa ter qual módulo?
Ou precisa só ter o win zip instalado?
E como eu "deszipo" o arquivo no servidor?

Valeu pelas explicações pessoal!
T+
Gabriel

Edição feita por: jgcl, 18/10/2004, 15:27.

João Gabriel
Site >> joaogabriel.org
CGiClube.net >> http://www.cgiclube.net
Vitória Perl Mongers >> http://vitoria.pm.org

#5 jgcl

jgcl

    João Gabriel C. Laass, Serra/ES

  • Usuários
  • 559 posts
  • Sexo:Não informado
  • Localidade:Serra / ES
  • Interesses:Tudo!

Posted 18/10/2004, 16:00

TAR:
tar -cvzf nome.tar.gz pastas arquivos etc


ZIP:
zip -r nome.zip arquivos pastas etc


O tar compacta melhor e é mais rápido

Ai, usei os códigos que você passou e não funcionaram....

Exemplo de como eu usei:
system("zip -r teste.zip forum");

Sabe o motivo pelo qual o script não zipou a pasta desejada?

Flw...
João Gabriel
Site >> joaogabriel.org
CGiClube.net >> http://www.cgiclube.net
Vitória Perl Mongers >> http://vitoria.pm.org

#6 Whitesnake

Whitesnake
  • Visitantes

Posted 18/10/2004, 18:26

Jgcl ele não está funcionando pq vc deve estar rodando em windows.

Eu vou testar o tar gzip aqui e depois t falo.

#7 stvkoch

stvkoch

    Turista

  • Usuários
  • 53 posts
  • Sexo:Não informado

Posted 19/10/2004, 08:12

Blz a todos....

Postei isso no Monks, e por isso acho que pode ser uma contribuição util aqui no wmonline.


Blz... ate aqui nos encontramos...
Bom este modulo eh bem interessante...
Fiz um pequeno script para demostra-lo, assim fica mais facil visualizar
como ele funciona....

Com este modulo vc pode criar diretorios somente no arq. ZIP e abri-los e colocar arquivos dentro, ou seja organizar o arquivo ZIP da maneira que vc quizer, diferente da organização da estrutura de arquivos que vc quer compactar.

Este script so comprime dois arquivos: teste.cgi e google.pl que estão no
diretorio onde ta gravado o script zipando.pl
#---------------------------------------------------------------
use Archive::Zip qw( :ERROR_CODES :CONSTANTS );

my $zip = Archive::Zip->new();

$zip->addFile( 'teste.cgi' );
$zip->addFile( 'google.pl');
die 'write error' unless $zip->writeToFileNamed( 'MeuArquivoZipado.zip' )
== AZ_OK;
#----------------------------------------------------------------

O modulo eh bem facil de usar e em pouco tempo eh possivel fazer bons
scripts de backup com ele.


Espero ter contribuido!
Um abraço a todos. Steven Koch



#--- outra mensagem-----------------

Segue mais uns exemplos enquanto não vou embora...heheh

#Adiciona o conteudo do diretorio
my $member = $zip->addTree("C:\\eday");

#Adiciona ou melhor cria um arquivo de txt com o texto abaixo
$member = $zip->addString( 'Ola Mundo!', 'textooo.txt' );

$member->desiredCompressionMethod( COMPRESSION_DEFLATED );
$member = $zip->addFile( 'teste.cgi', 'google.pl' );
die 'write error' unless $zip->writeToFileNamed( 'Meuarquivo.zip' ) ==
AZ_OK;

Ate mais....
Até mais, espero ter ajudado.


Steven Koch :)
stvkoch@gmail.com

#8 Hospedar-se .Com

Hospedar-se .Com

    Super Veterano

  • Usuários
  • 1500 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 19/10/2004, 12:39

isso q eu passei é pra UNIX

#9 jgcl

jgcl

    João Gabriel C. Laass, Serra/ES

  • Usuários
  • 559 posts
  • Sexo:Não informado
  • Localidade:Serra / ES
  • Interesses:Tudo!

Posted 19/10/2004, 13:24

Blz a todos....

Postei isso no Monks, e por isso acho que pode ser uma contribuição util aqui no wmonline.


Blz... ate aqui nos encontramos...
Bom este modulo eh bem interessante...
Fiz um pequeno script para demostra-lo, assim fica mais facil visualizar
como ele funciona....

Com este modulo vc pode criar diretorios somente no arq. ZIP e abri-los e colocar arquivos dentro, ou seja organizar o arquivo ZIP da maneira que vc quizer, diferente da organização da estrutura de arquivos que vc quer compactar.

Este script so comprime dois arquivos: teste.cgi e google.pl que estão no
diretorio onde ta gravado o script zipando.pl
#---------------------------------------------------------------
use Archive::Zip qw( :ERROR_CODES :CONSTANTS );

my $zip = Archive::Zip->new();

$zip->addFile( 'teste.cgi' );
$zip->addFile( 'google.pl');
die 'write error' unless $zip->writeToFileNamed( 'MeuArquivoZipado.zip' )
== AZ_OK;
#----------------------------------------------------------------

O modulo eh bem facil de usar e em pouco tempo eh possivel fazer bons
scripts de backup com ele.


Espero ter contribuido!
Um abraço a todos. Steven Koch



#--- outra mensagem-----------------

Segue mais uns exemplos enquanto não vou embora...heheh

#Adiciona o conteudo do diretorio
my $member = $zip->addTree("C:\\eday");

#Adiciona ou melhor cria um arquivo de txt com o texto abaixo
$member = $zip->addString( 'Ola Mundo!', 'textooo.txt' );

$member->desiredCompressionMethod( COMPRESSION_DEFLATED );
$member = $zip->addFile( 'teste.cgi', 'google.pl' );
die 'write error' unless $zip->writeToFileNamed( 'Meuarquivo.zip' ) ==
AZ_OK;

Ate mais....

Ai, não tem como zipar uma pasta inteira não?

E pra deszipar os arquivos, como eu faço?

Flw...
João Gabriel
Site >> joaogabriel.org
CGiClube.net >> http://www.cgiclube.net
Vitória Perl Mongers >> http://vitoria.pm.org

#10 jgcl

jgcl

    João Gabriel C. Laass, Serra/ES

  • Usuários
  • 559 posts
  • Sexo:Não informado
  • Localidade:Serra / ES
  • Interesses:Tudo!

Posted 19/10/2004, 15:33

Opa!!! Vacilo meu!! No código que o "stvkoch" passou já mostra como zipar a pasta inteira...

Só não vi a parte pra "deszipar".

Flw..
João Gabriel
Site >> joaogabriel.org
CGiClube.net >> http://www.cgiclube.net
Vitória Perl Mongers >> http://vitoria.pm.org

#11 Gabriel

Gabriel

    CGI & PHP até Morre!!!!

  • Usuários
  • 573 posts
  • Sexo:Não informado
  • Localidade:Santo Andre-SP
  • Interesses:http://www.divulgue-me.com

Posted 20/10/2004, 09:13

eu uso outro code
tenho em casa
vo pegar e depois posto aqui o code
funfa em serevr linux e deve funfa em windows tbm
flw's
Editado pela equipe Forum Wmo, favor ler as regras.

#12 jgcl

jgcl

    João Gabriel C. Laass, Serra/ES

  • Usuários
  • 559 posts
  • Sexo:Não informado
  • Localidade:Serra / ES
  • Interesses:Tudo!

Posted 22/10/2004, 15:58

Opa! Manda ai!!

Ai stvkoch, tens algum código ai pra "deszipar" o arquivo zip?

Um detalhe sobre esse módulo/código: ele só ira criar o arquivo caso o seu diretório tenha chmod 777 e caso ainda assim ele não crie o arquivo, crie você mesmo o arquivo em branco no notepad e salve-o com o mesmo nome do arquivo que o script vai criar. É batata!!

Flw...
João Gabriel
Site >> joaogabriel.org
CGiClube.net >> http://www.cgiclube.net
Vitória Perl Mongers >> http://vitoria.pm.org

#13 Whitesnake

Whitesnake
  • Visitantes

Posted 23/10/2004, 00:50

Para extrair, use o módulo Archive::Extract.
Ai vai um exemplo prontinho...

#!/usr/bin/perl
print  "Content-type:Text/html\n\n";
use Archive::Extract;

$entrada="C:/apache/htdocs/arquivos.zip";  # Arquivo compactado
$saida   ="C:/apache/htdocs/arquivos";       # Pasta de saída

my $zip = Archive::Extract->new( archive => $entrada );
 
my $ext = $zip->extract;

my $ext = $zip->extract( to => $saida );

my $ext = $zip->extract or die $zip->error;

my $arquivos   = $zip->files;
   
$zip->extract_path;


Ele trabalha com arquivos no formato .zip, .tar.gz, .tar, .gz

#14 jgcl

jgcl

    João Gabriel C. Laass, Serra/ES

  • Usuários
  • 559 posts
  • Sexo:Não informado
  • Localidade:Serra / ES
  • Interesses:Tudo!

Posted 23/10/2004, 00:57

O Archive::Zip não descompacta não né?

Flw..
João Gabriel
Site >> joaogabriel.org
CGiClube.net >> http://www.cgiclube.net
Vitória Perl Mongers >> http://vitoria.pm.org

#15 Whitesnake

Whitesnake
  • Visitantes

Posted 23/10/2004, 01:03

Acho que não.




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq