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

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

RE: [shell-script] Impressão sem deixar de mostrar resultado.


From: Gemayel Alves
Subject: RE: [shell-script] Impressão sem deixar de mostrar resultado.
Date: Fri, 25 Jan 2008 20:24:09 +0000

MrBiTs meu brother, eu sei q o tee faz isso a questao é, como incluir o tee 
dentro do shellscript por exemplo pra nao ser necessario menciona-lo no shell.
________________________________
> To: address@hidden
> From: address@hidden
> Date: Fri, 25 Jan 2008 18:14:17 -0200
> Subject: Re: [shell-script] Impressão sem deixar de mostrar resultado.
> 
> 
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> | Estou num dilema antigo aqui, resolvi postar,
> | 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
> 
> O comando tee faz isso para você.
> 
> mrbits@rimmon:~$ cat d.txt | tee d1.txt
> Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed eu ipsum
> vitae nisl pretium scelerisque.
> The quick brown fox jumps over the lazy dog
> 
> mrbits@rimmon:~$ cat d1.txt
> Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed eu ipsum
> vitae nisl pretium scelerisque.
> The quick brown fox jumps over the lazy dog
> 
> - --
> 
> Um abraço
> 
> MrBiTs - address@hidden
> 
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.6 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
> 
> iD8DBQFHmkMZrDdxWm3R8YYRAqx5AJ4jgolxrwnTeWz0g/OZ+SM1sa2FcACfYbrb
> h0dircQH2DUiZiZnamIYsU0=
> =jN+G
> -----END PGP SIGNATURE-----
> 
> 

_________________________________________________________________
Confira vídeos com notícias do NY Times, gols direto do Lance, videocassetadas 
e muito mais no MSN Video!
http://video.msn.com/?mkt=pt-br
>From address@hidden Fri Jan 25 15:48:40 2008
Return-Path: <address@hidden>
X-Sender: address@hidden
X-Apparently-To: address@hidden
X-Received: (qmail 69650 invoked from network); 25 Jan 2008 23:48:39 -0000
X-Received: from unknown (66.218.66.72)
  by m45.grp.scd.yahoo.com with QMQP; 25 Jan 2008 23:48:39 -0000
X-Received: from unknown (HELO an-out-0708.google.com) (209.85.132.251)
  by mta14.grp.scd.yahoo.com with SMTP; 25 Jan 2008 23:48:39 -0000
X-Received: by an-out-0708.google.com with SMTP id c24so192964ana.97
        for <address@hidden>; Fri, 25 Jan 2008 15:48:36 -0800 (PST)
X-Received: by 10.100.152.19 with SMTP id z19mr5447891and.56.1201304916815;
        Fri, 25 Jan 2008 15:48:36 -0800 (PST)
Return-Path: <address@hidden>
X-Received: from localhost ( [201.86.26.237])
        by mx.google.com with ESMTPS id c27sm4262603ana.27.2008.01.25.15.48.34
        (version=SSLv3 cipher=OTHER);
        Fri, 25 Jan 2008 15:48:36 -0800 (PST)
Date: Fri, 25 Jan 2008 22:42:54 -0200
To: <address@hidden>
Message-ID: <address@hidden>
X-Originating-IP: 209.85.132.251
X-eGroups-Msg-Info: 1:12:0:0:0
From: "mop" <address@hidden>
Subject: Re: [shell-script] 
=?iso-8859-1?Q?Impressão_sem_deixar_de_mostrar_resultado.?X-Yahoo-Group-Post: 
member; u04455233

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



reply via email to

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