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

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

Res: [shell-script] Re: Compactar e descompactar arquivos.tar.gz


From: Itamar da Silva Oliveira
Subject: Res: [shell-script] Re: Compactar e descompactar arquivos.tar.gz
Date: Tue, 24 Nov 2009 04:40:43 -0800 (PST)

Pessoal mais uma vez venho pedir ajuda a vocês,

Como faço no no script para quando for compilar um programa usando ./configure, 
make e make install, quando um dos comandos falhar o script será abortado 
exibindo uma mensagem para o usuário do erro.
Obrigado




________________________________
De: itamaro_liveira <address@hidden>
Para: address@hidden
Enviadas: Quarta-feira, 4 de Novembro de 2009 12:36:38
Assunto: [shell-script] Re: Compactar e descompactar arquivos.tar.gz

  
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;32mRespons avel na criacao do banco asteriskdb\033[ 00;33m"
else
echo -e "\033[01;33m ERRO FATAL: falta arquivo estrutura-asteriskd b.sql 
(/usr/src/estrutura -asteriskdb. sql)\033[ 00;33m"
exit 1
fi

estastcdr="/ usr/src/estrutur a-asteriskcdrdb. sql"
if [ -f "/usr/src/estrutura -asteriskcdrdb. sql" ]; then estastcdr="/ 
usr/src/estrutur a-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;32mRespons 
avel na criacao do banco asteriskcdrdb\ 033[00;33m` " 15 85
else
echo -e "\033[01;33m ERRO FATAL: falta arquivo estrutura-asteriskd b.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 shell-script@ yahoogrupos. com.br, "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.
>





      
____________________________________________________________________________________
Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com

[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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