shell-script-pt
[Top][All Lists]
Advanced

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

Re: Compactar e descompactar arquivos.tar.gz


From: itamaro_liveira
Subject: Re: Compactar e descompactar arquivos.tar.gz
Date: Wed, 04 Nov 2009 15:36:38 -0000
User-agent: eGroups-EW/0.82

Na verdade estou desenvolvendo um script em bash para instalação do Asterisk 
para facilitar na hora da instalação do servidor.
segue abaixo o código não terminei ainda, preciso dá parte de descompactar 
usando dialog --guage.

Favor se precisar de melhoras fiquem a vontade pra sugerir melhorias.

#!/bin/bash
# Script criado por Itamar Oliveira
# Este e um script para instalacao de pacotes para servidor IBPX-VOX
clear
trap "" 1 2 3 15 
apt-get install -y dialog 2>/dev/null 1>/dev/null
#Wget com guage baixar arquivos
pega_porcentagem()
{
   while  true
   do
      x=`cat $LOG | grep % | cut -c62-64 | tail -n 1`
      echo $x
      #se o porcentagem igual a 100 para de fazer o loop infinito, pois arquivo 
jah
      #foi baixado completamente
      if [ $x = 100 ] 2>/dev/null 1>/dev/null
      then
         break;
      fi
   done
}

 dialog --begin 15 45 --backtitle "Smart Vox IPBX - versao 2.0" --title 
"VOX-IPBX" --msgbox 'Apos a finalizacao da instalacao o sistema esta apto a 
funcinar.' 10 30

#Verifica arquivos necessarios a instalacao
estastdb="/usr/src/estrutura-asteriskdb.sql"
if [ -f "/usr/src/estrutura-asteriskdb.sql" ]; then 
estastdb="/usr/src/estrutura-asteriskdb.sql"; fi
if [ -f "$estastdb" ]; then
        if [ "$estastdb" != "/usr/src/estrutura-asteriskdb.sql" ]; then op 
$estastdb /usr/src/estrutura-asteriskdb.sql; fi
        #echo -e "\033[01;32mResponsavel na criacao do banco 
asteriskdb\033[00;33m"
else
        echo -e "\033[01;33m ERRO FATAL: falta arquivo estrutura-asteriskdb.sql 
(/usr/src/estrutura-asteriskdb.sql)\033[00;33m"
        exit 1
fi

estastcdr="/usr/src/estrutura-asteriskcdrdb.sql"
if [ -f "/usr/src/estrutura-asteriskcdrdb.sql" ]; then 
estastcdr="/usr/src/estrutura-asteriskcdrdb.sql"; fi
if [ -f "$estastcdr" ]; then
        if [ "$estastcdr" != "/usr/src/estrutura-asteriskcdrdb.sql" ]; then op 
$estastcdr /usr/src/estrutura-asteriskcdrdb.sql; fi
        #dialog --title "Asteriskcdrdb " --infobox "`echo ;echo -e 
"\033[01;32mResponsavel na criacao do banco asteriskcdrdb\033[00;33m`" 15 85
else
        echo -e "\033[01;33m  ERRO FATAL: falta arquivo 
estrutura-asteriskdb.sql (/usr/src/estrutura-asteriskcdrdb.sql)\033[00;37m"
        exit 1
fi

#Verificando integridade do sistema
 dialog  --begin 10 20 --backtitle "Smart Vox IPBX - versao 2.0" --title 
"Verificando integridade do sistema..." --infobox "`echo ;apt-get update -y`" 
15 85

#Verificando atualizacao do sistema
 dialog --begin 10 20 --backtitle "Smart Vox IPBX - versao 2.0" --title 
"Atualziando a base do sistema" --infobox "`echo ;apt-get upgrade -y`" 15 85

# Variavel do sistema
AST=asterisk-1.4.26.2.tar.gz
DIRAST=asterisk-1.4.26.2
ZAP=zaptel-1.4.12.1.tar.gz
DIRZAP=zaptel-1.4.12.1
LIBP=libpri-1.4.10.1.tar.gz
DIRLIBP=libpri-1.4.10.1
ADDONS=asterisk-addons-1.4.9.tar.gz
DIRADDONS=asterisk-addons-1.4.9
SOUNDS=asterisk-sounds-1.2.1.tar.gz
DIRSOUNDS=asterisk-sounds-1.2.1
VLIB=voicerlib-4.2.0.0.tar.gz
DIRBLIB=voicerlib-4.2.0.0
DGV=dgvchannel-1.0.4.tar.gz
DIRDGV=dgvchannel-1.0.4

#Links pra daownloas
SITE0="http://downloads.digium.com";
SITE1="http://downloads.asterisk.org";
SITE2="http://downloads.digivoice.com.br";

# URL dos pacotes
AST_URL_LIBPRI="$SITE1/pub/telephony/libpri/releases/$LIBP"
AST_URL_SRC="$SITE0/pub/asterisk/releases/$AST"
AST_URL_ZPT="$SITE0/pub/zaptel/releases/$ZAP"
AST_URL_ADD="$SITE0/pub/asterisk/releases/$ADDONS"
AST_URL_SND="$SITE0/pub/asterisk/releases/$SOUNDS"
DGV_URL_VOICE="$SITE2/pub/voicerlib/linux/stable/$VLIB"
DGV_URL_DGV="$SITE2/pub/dgvchannel/stable/$DGV"

#LAST=http://downloads.digium.com/pub/asterisk/releases/$AST

#variavel do log
LOG=wget.log

# Instalacao dos pacotes essenciais
dialog --begin 10 20 --backtitle "Smart Vox IPBX - versao 2.0" --title 
"Instalando pacotes essenciais do sistemea" --infobox "`echo ;apt-get install 
-y mc vim openvpn denyhosts iftop mtr whois`" 15 85
sleep 2
dialog --begin 10 20 --backtitle "Smart Vox IPBX - versao 2.0" --title 
"Instalando pacotes essenciais do sistemea" --infobox "`echo ;apt-get install 
-y biksemel3 libiksemel-dev libgnutls-dev`" 15 85
sleep 2
dialog --begin 10 20 --backtitle "Smart Vox IPBX - versao 2.0" --title 
"Instalando pacotes essenciais do sistemea" --infobox "`echo ;apt-get install 
-y speex libspeex1 libspeex-dev`" 15 85
sleep 2
dialog --begin 10 20 --backtitle "Smart Vox IPBX - versao 2.0" --title 
"Instalando pacotes essenciais do sistemea" --infobox "`echo ;apt-get install 
-y bison openssl libasound2-dev libc6-dev libnewt-dev libssl-dev zlib1g-dev 
libncurses5-dev libeditline0`" 15 85
sleep 2
dialog --begin 10 20 --backtitle "Smart Vox IPBX - versao 2.0" --title 
"Instalando pacotes essenciais do sistemea" --infobox "`echo ;apt-get install 
-y libeditline-dev libedit2 libedit-dev linux-headers-`uname -r` mpg123`" 15 85
sleep 2
dialog --begin 10 20 --backtitle "Smart Vox IPBX - versao 2.0" --title 
"Instalando pacotes essenciais do sistemea" --infobox "`echo ;apt-get install 
-y libmysqlclient15-dev libtiff4 libtiff4-dev libxml2 libxml2-dev`" 15 85
sleep 2
dialog --begin 10 20 --backtitle "Smart Vox IPBX - versao 2.0" --title 
"Instalando pacotes essenciais do sistemea" --infobox "`echo ;apt-get install 
-y  build-essential automake fakeroot debhelper autotools-dev cdbs`" 15 85
sleep 2
dialog --begin 10 20 --backtitle "Smart Vox IPBX - versao 2.0" --title 
"Instalando pacotes essenciais do sistemea" --infobox "`echo ;apt-get install 
-y pkg-config gcc g++ cpp make binutils debconf-utils`" 15 85
sleep 2
dialog --begin 10 20 --backtitle "Smart Vox IPBX - versao 2.0" --title 
"Instalando pacotes essenciais do sistemea" --infobox "`echo ;apt-get install 
-y debhelper dpkg-dev gettext html2text intltool-debian module-assistant`" 15 85
sleep 2
#dialog --title "Instalando pacotes essenciais do sistemea" --infobox "`echo 
;apt-get install -y `" 15 85

# Instalacao do servidor de banco de dados Mysql
dialog --begin 10 20 --backtitle "Smart Vox IPBX - versao 2.0" --title 
"Instalando pacotes essenciais do sistemea" --infobox "`echo ;apt-get install 
-y mysql-server apache2 php5 php5-mysql php-pear php5-gd php5-cli 
libnet-ssleay-perl`" 15 85
sleep 2
dialog --begin 10 20 --backtitle "Smart Vox IPBX - versao 2.0" --title 
"Instalando pacotes essenciais do sistemea" --infobox "`echo ;apt-get install 
-y python-urwid bmon bwm-ng snmp snmpd nbsmtp`" 15 85
sleep 2

# Preparando servidor para o padrao SMARTVOX
dialog --begin 10 20 --backtitle "Smart Vox IPBX - versao 2.0" --title " 
Preparando o servidor para o padrao SMARTVOX " --infobox "`echo ;apt-get 
install -y php5-sqlite php5-memcache php5-mcrypt php5-xsl`" 15 85
sleep 2


#Baixando os pacotes fontes para compilacao do asterisk
#verificando se ja existe o pacote
if [ ! -f $east ]
then
       # echo "Ja existe" 2>/dev/null 1>/dev/null

#else
        wget -o $LOG $AST_URL_SRC &
        ( pega_porcentagem ) | dialog --begin 15 45 --backtitle "Smart Vox IPBX 
- versao 2.0 " --title " Baixando pacote src do $AST  " --gauge " Aguarde, 
fazendo download do arquivo $AST ..." 0 0
fi

#Baixando o pacote fontes do asterisk-addons
if [ ! -f $ADDONS ]
then
        #echo "Ja existe" 2>/dev/null 1>/dev/null
#else
        wget -o $LOG $AST_URL_ADD &
        ( pega_porcentagem ) | dialog --begin 15 45 --backtitle "Smart Vox IPBX 
- versao 2.0 " --title " Baixando pacote src do $ADDONS  " --gauge " Aguarde, 
fazendo download do arquivo $ADDONS ..." 0 0
fi

#Baixando o pacote src da libpri
if [ ! -f $LIBP ] 
then
        #echo "Ja existe" 2>/dev/null 1>/dev/null 
#else
        wget -o $LOG $AST_URL_LIBPRI &
        ( pega_porcentagem ) | dialog --begin 15 45 --backtitle "Smart Vox IPBX 
- versao 2.0 " --title " Baixando pacote src da $LIBP  " --gauge " Aguarde, 
fazendo download do arquivo $LIBP ..." 0 0
fi

#Baixando o pacote src da zaptel
if [ ! -f $ZAP ]
then 
#       echo "Ja existe" 2>/dev/null 1>/dev/null
#else
        wget -o $LOG $AST_URL_ZPT &
        ( pega_porcentagem ) | dialog --begin 15 45 --backtitle "Smart Vox IPBX 
- versao 2.0 " --title " Baixando pacote src da $ZAP  " --gauge " Aguarde, 
fazendo download do arquivo $ZAP ..." 0 0
fi

#Baixando o pacote src da Asterisk-sound
if [ ! -f $SOUNDS ]
then
#       echo "Ja existe" 2>/dev/null 1>/dev/null
#else 
         wget -o $LOG $AST_URL_SND &
        ( pega_porcentagem ) | dialog --begin 15 45 --backtitle "Smart Vox IPBX 
- versao 2.0 " --title " Baixando pacote src da $SOUNDS  " --gauge " Aguarde, 
fazendo download do arquivo $SOUNDS ..." 0 0
fi

#Baixando o pacote src da voiceliber
if [ ! -f $VLIB ]
then
#       echo "Ja existe" 2>/dev/null 1>/dev/null
#else
         wget -o $LOG $DGV_URL_VOICE &
        ( pega_porcentagem ) | dialog --begin 15 45 --backtitle "Smart Vox IPBX 
- versao 2.0 " --title " Baixando pacote src da $VLIB  " --gauge " Aguarde, 
fazendo download do arquivo $VLIB ..." 0 0
fi

#Baixando o pacote src da DGV
if [ ! -f $DGV ]
then 
#       echo "Ja existe" 2>/dev/null 1>/dev/null 
#else
        wget -o $LOG $DGV_URL_DGV &
        ( pega_porcentagem ) | dialog --begin 15 45 --backtitle "Smart Vox IPBX 
- versao 2.0 " --title " Baixando pacote src da $DGV" --gauge " Aguarde, 
fazendo download do arquivo $DGV ..." 0 0
fi

#Extracao dos arquivos sources para compilacao do asterisk
if [ ! -d $DIRAST ]
then
#       echo "Ja existe" 2>/dev/null  
#else
        dialog --begin 10 20 --backtitle "Smart Vox IPBX - versao 2.0" --title 
"Extraindo pacotes src do $AST" --gauge "`tar xvfz $AST`" 25 95
fi

é isso aí pessoal. Aí está o código
Valeu mesmo


--- Em address@hidden, "itamaro_liveira" <itamaro_liveira@...> escreveu
>
> Pessoal, boa tarde.
> 
> Estou fazendo um script em bash usando dialog, e gostaria que o script 
> compactasse e descompactasse, usando tar.gz mostrando uma barra de progresso 
> no dialog. Como faço isso?
> Obrigado.
>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]