Certamente há muitas formas de fazer isso. Vou colocar duas para estilos de 
comando diferenciados.

A primeira parece mais alinhada com o que foi pedido:
no topo do script se insere a linha:
 . log
o source log poderia ser assim:
[ $LOG ]||{ LOG=/tmp/${0##*/}.log;LOG=$LOG $0 $* 2>&1|tee $LOG;exit;}
É só isso, o script é chamado normalmente.

A segunda permite ligar ou desligar o log na própria linha de comando:
o script log seria:
LOG=/tmp/${1##*/}.log;$* 2>&1|tee $LOG
e o script alvo permanece inalterado.
Se o script é chamado com "scri p1 p2", para fazer o registro seria chamado
com "log scri p1 p2".

Cuidar para que "log" esteja em ponto adequado no PATH ou usar caminho
completo. Dependendo da complexidade dos scripts, redirecionamentos, como 2>&1,
podem trazer problemas.



------------------------------------------------------------------
>From: Gemayel Alves
>preciso salvar a saida de comandos em arquivo mas sem deixar de mostrar o 
resultado na tela, ja tentei o tee mas eu precisaria executar
 ./script.sh |tee log.log eu queria outra maneira de fazer isso se possivel 
introduzir a solucao tee dentro do ./script.sh



---------------------------------------------------------------------
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: [EMAIL PROTECTED]
---------------------------------------------------------------------
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

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/shell-script/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 

Responder a