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

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

Re: [shell-script] ajuda com saida do comando tar


From: Anderson Deluiz - Suporte Multi-Thread
Subject: Re: [shell-script] ajuda com saida do comando tar
Date: Mon, 29 Jan 2007 19:58:24 -0200
User-agent: Thunderbird 1.5.0.9 (Windows/20061207)

Bem,

O $? vai ter o valor que for retornado pelo tar (ou qualquer comando que seja executado), independente de qualquer mensagem de erro ou sucesso que seja gerada. $? sempre guarda o return code do último comando ou script executado.

Uma coisa que vi com ksh é que se você deseja concatenar as mensagens de stdout num arquivo ( >> $log) e logo depois deseja redirecionar stderr para o mesmo arquivo concatenando-os, deve usar "2>> $log" e não "2>&1". Mas no bash não sei como ficaria, estou falando pelo ksh.

Abs

William José Vicente escreveu:
Adriano,

   acho que você não precisa usar:
       cmdExe=`tar -zcf $loc$ban.tar.gz $tmp >> $log 2&>1`
       if [ "$cmdExe" ];

   Pode usar:
        tar -zcf $loc$ban.tar.gz $tmp >> $log 2>&1 # Para o redirecionamento
de erro para stdout use 2>&1
        if [ $? -ne 0 ] # Na verificação anterior eu acho que nunca aparecia
erro pois o retorno do comando tar (stdout e stderr foram colocadas no
arquivo de log, então a variável ficava sempre com "" (nunca entrando no
then).

   Com estas alterações parece que funcionou. Espero ter ajudado.

Abraços,

   William

Em 23/01/07, Adriano Carneiro de Moura <address@hidden>
escreveu:
  pessoal este é um peçao do código ...

# diretório temporário
tmp="/tmp/bk_mysql_$ban"
# arquivo log
log="/tmp/bk_mysql_$ban/$ban.log"
# arquivo com instruções sql para restaurar o banco
res="/tmp/bk_mysql_$ban/restaura_$ban.sql"
# leia-me
lei="/tmp/bk_mysql_$ban/leia-me"
# local onde o arquivo de backup será gravado
loc="/home/samba/temp/"

# compactando
cmdExe=`tar -zcf $loc$ban.tar.gz $tmp >> $log 2&>1`
if [ "$cmdExe" ];
then
echo "Erro ao tentar compactar diretório $tmp"
exit
fi

# fim (problema depois do 2>>$log
echo "Backup realizado com sucesso !!!" >> $log

estou com um problema é que á ultima linha não funciona
echo "Backup realizado com sucesso !!!" >> $log

depois do comando tar não consigo mais escrever no log ($log)

o que poder ser ?

__________________________________________________
Fale com seus amigos de graça com o novo Yahoo! Messenger
http://br.messenger.yahoo.com/

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



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



---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como 
perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
aviso.
---------------------------------------------------------------------
Sair da lista: address@hidden
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em 
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil

Links do Yahoo! Grupos






reply via email to

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