[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[FORA DO TOPICO] Ajudinha com script em bash



Por necessidade, com meus parcos conheciemntos de shell script, fiz um
bacalhau para descompactar multiplops arquivos:

china@localhost:~$ cat /usr/local/bin/descompacta
#!/bin/bash
for i in $*
do
tar -zxvf $i
done
china@localhost:~$

Entao eu uso
china@localhost:~$ descompacta /onde/estao/os/arquivos/*

Sendo que o $* recebe a lista de arquivos apontada no caminho como
entrada.

Esta funcionando, so que toda vez que tenho de descompactar arquivos de
outras extensoes eu tenho de editar o script e trocar o comando. Isso
ate que nao e problema, mas, ja que fiz a marreta, gostaria de fazer
algo elegante. Entao pergunto:

Como fazer com que as entradas em *.zip, *.tar.bz2 e outros formatos
compactados contidos no mesmo diretorio sejam descompactados ao mesmo
tempo?
Tipo: tenho um diretorio contendo:

arquivo1.tar.gz
arquivo2.tar.bz2
arquivo3.zip
arquivo4.gz
arquivo5.rar

seja passado como parametro para o script e ele descompacte todos na
hora que eu mandar 
china@localhost:~$ descompacta /diretorio/*

[]'s
-- 
Outgoing mail is certified Windows Free.
Checked by Debian GNU/Linux <http://www.debian.org>.

"free your computer and your soul will follow..."

Attachment: signature.asc
Description: Esta =?ISO-8859-1?Q?=E9?= uma parte de mensagem assinada digitalmente


Reply to: