Em Thu, 15 Jan 2004 14:51:59 -1000 Marcio de Araujo Benedito <[EMAIL PROTECTED]> escreveu:
> Por necessidade, com meus parcos conheciemntos de shell script, fiz um > bacalhau para descompactar multiplops arquivos: > > [EMAIL PROTECTED]:~$ cat /usr/local/bin/descompacta > #!/bin/bash > for i in $* > do > tar -zxvf $i > done > [EMAIL PROTECTED]:~$ > > Entao eu uso > [EMAIL PROTECTED]:~$ 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 > [EMAIL PROTECTED]:~$ 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..." > Oi Márcio Poderia ser algo assim: <script> #!/bin/bash NOME=$(/usr/bin/basename $0) if [ $# != 1 ];then echo "Esse programa precisa de 1 argumento!"; echo "$NOME tar - para arquivos tar"; echo "$NOME bz2 - para arquivos bz2"; echo "$NOME zip - para arquivos zip"; echo "$NOME gz - para arquivos gz"; echo "$NOME all - para arquivos tar, bz2, zip e gz"; exit 1; fi TIPO=$1 case $TIPO in tar) echo "Descompactando tar"; tar xvf *.$TIPO;; bz2) echo "Descompactando bz2";tar jxvf *.$TIPO;; zip) echo "Descompactando zip";unzip -vf *.$TIPO;; gz) echo "Descompactando gz";tar zxvf *.$TIPO;; all) for i in tar bz2 zip gz;do descompacta.sh $i; done;; *) echo "Opção inválida! - tente tar,bz2,zip ou gz";; esac exit 0 </script> -- (@_ Leandro Padilha Ferreira - [EMAIL PROTECTED] //\ V_/_ http://androle.pro.br Linux user: #237.744 ------------------------------------------ No corra... vuele!

