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