O GLOBO - Informática Etc. - Carlos Alberto Teixeira
Artigo: 10 - Escrito em: 1991-04-30 - Publicado em: 1991-05-06


ZIPando - parte 2


Recebemos mensagens nos BBS's dizendo que o BBS-Mania da semana passada foi meio pesado. Foi mesmo. Hoje está mais pesado ainda. Mas é assim mesmo: quando o papo fica mais técnico, alguns chiam. Estamos falando do ZIP e não dá para fugir do detalhe e do maldito jargão.

Pois muito bem, o ZIP já está em suas mãos. Quero crer que você seguiu direitinho as instruções do BBS-Mania da semana passada e já explodiu o PKZ110.EXE num diretório que consta do seu PATH do DOS. Vamos agora lavar a égua com este engenhoso programeto.

Em primeiro lugar é hora de aprender a descompactar um "archive" zipado. Refrescando sua memória: um "archive" é um pacote gerado pelo ZIP, ou "zipado", que contem um ou vários arquivos comprimidos. Tomemos como exemplo um archive chamado PACOTE, contendo diversos arquivos compactados, incluindo BAT's, COM's, EXE's e outros. Crie um subdiretório em seu disco rígido onde irão residir os arquivos a serem extraídos do archive zipado. Como sabemos, o programa que efetua a descompactação chama-se PKUNZIP.EXE. O comando "PKUNZIP PACOTE *.*" vai descompactar todos os arquivos que compõem o ZIP, gravando-os no diretório corrente.

Suponhamos agora que você só deseje extrair do PACOTE.ZIP os arquivos *.BAT. Seu comando deverá ser: "PKUNZIP PACOTE *.BAT". Caso você queira apenas listar o conteúdo do seu ZIP, utilize o comando: "PKUNZIP -v PACOTE".

Vamos imaginar agora que o seu PACOTE.ZIP contenha um arquivo chamado PROG.EXE e que você acionou o comando "PKUNZIP PACOTE PROG.EXE" de forma a extrair apenas este arquivo PROG.EXE, descompactando-o. Acontece que, para complicar as coisas neste exemplo, vamos imaginar que já existia um arquivo chamado PROG.EXE em seu diretório corrente. O que vai acontecer é que o programa PKUNZIP notará a existência de um PROG.EXE no seu disco e vai perguntar-lhe se você deseja gravar a versão sendo descompactada por cima daquela já existente. Quando você tiver certeza que vai querer descompactar com "overwrite" (substituindo a eventual versão já existente no diretório alvo pela versão sendo descompactada), use o comando: "PKUNZIP -o PACOTE *.*".

Muito bem. Já que estamos craques na descompactação, vamos ver como é que se comprime arquivos usando o programa PKZIP. Muitos dos usuários que passaram a conhecer as maravilhas do ZIP (e também de outros compactadores que estudaremos oportunamente) regravaram todos os seus acervos de disquetes em casa ou no trabalho, só que em formato compactado. Isto resultou numa substancial economia de disquetes. Vale a pena dar uma analisada nos compactadores disponíveis e adotar o que lhe for mais conveniente. Dê uma pesquisada nos BBS's e encontre, sob a forma de mensagem pública, a detalhada análise comparativa levada a termo recentemente pelo meticuloso especialista, o Sr. Durval Menezes.

Compactemos, então. Neste exemplo, temos no diretório corrente diversos arquivos *.DAT, *.EXE, *.COM e *.PRG. Vamos criar um archive chamado PGMS, contendo apenas os arquivos executáveis, ou seja, os *.EXE e *.COM. O comando usado deverá ser: "PKZIP PGMS *.EXE *.COM". Em alguns casos, porém, o usuário gostaria de compactar apenas alguns determinados arquivos de um certo diretório. Não tem problema, pois temos duas soluções para o caso dele. A primeira delas é especificar os nomes dos arquivos desejados na própria linha de comando: "PKZIP PGMS ARQ1.EXE ARQ2.EXE ARQ3.EXE". Caso a lista de arquivos seja muito extensa e não caiba na linha de comandos, pode ser usado o macete do "listfile". Explicando melhor: você deverá criar um arquivo ASCII através de seu editor preferido, contendo em cada linha o nome de um dos arquivos que você deseja compactar. Salve este arquivo-lista sob o nome de, por exemplo, LOTE1.DAT. Seu comando de compactação será simples: "PKZIP PGMS @LOTE1.DAT". Note o caracter arrôba "@" precedendo o nome do arquivo-lista LOTE1.DAT, indicando que o programa PKZIP deverá compactar cada um dos arquivos nele listados.

Outra sensacional facilidade oferecida pelo ZIP é a de permitir a criação de pacotes "self-extract" (auto-extraíveis), conforme mencionamos na semana passada. O programa que realiza esta proeza chama-se ZIP2EXE.EXE. Considere um archive já pronto, cujo nome seja TABELAS.ZIP. Para transformá-lo num self-extract, basta acionar o comando: "ZIP2EXE TABELAS" e pronto. Será criado um arquivo TABELAS.EXE que se descompactará sózinho no diretório corrente, quando for executado.

Para os Zipófilos, cabe uma dica interessante para o caso de você querer armazenar num ZIP todo o conteúdo de um disquete, incluindo a estrutura completa de sub-diretórios e até o seu "volume label". Acione o comando: "PKZIP -pr -$a DSKTE A:*.*", supondo-se que o disquete está no drive A e que o archive vai se chamar DSKTE. Para reconstituir o disquete mais tarde, o comando usado deverá ser: "PKUNZIP -d -$a DSKTE A: *.*", com atenção especial para o espaço entre o "A:" e o "*.*".

Teríamos muitos outros exemplos a fornecer sobre malabarismos e macetes do ZIP, mas como infelizmente não dispomos do importantíssimo caracter "backslash" (barra invertida), largamente utilizado pelo DOS para identificar sub-diretórios, ficamos na saudade. Só nos resta recomendar a leitura atenta do MANUAL.DOC e encorajá-lo a pedir socorro em qualquer BBS através de mensagem pública. A turma de usuários terá o maior prazer em lhe prestar auxílio.

O ZIP não é o programa que cria o menor pacote compactado, mas é o programa mais ligeiro. O melhor compactador em termos de tamanho final do archive gerado é o LHA 2.11, que será abordado nesta coluna em breve. Este outro é bem mais lento que o ZIP, mas para quem tem máquina ligeira é sopa no mel. Para terminar, dois avisos:

* Não percam nos BBS's da cidade o arquivo ANE-VGA.ZIP, um show em VGA sobre A NOVA ERA. Pode ser muito fácil ou muito difícil de acompanhar, dependendo da sua percepção. É uma sequência de telas em que os dizeres, as formas, as cores e os números têm dado margem a intermináveis papos e reflexões. Produzido pelos Arautos, é um trabalho ultra-sintético que traz de uma forma nunca vista, noções e conceitos que já fazem parte de nosso cotidiano, apesar de não estarmos tão conscientes disso. Mesmo que você não perceba, A NOVA ERA vai "acelerar o seu clock".

* O CSB BBS continua tendo três linhas, sendo que todas estão sequenciadas no mesmo número de telefone: 286-2242. Por favor, não ligue para os outros dois números antigos, pois poderá estar incomodando alguma velhinha no meio da madrugada.


[ Voltar ]