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

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

Re: [Bulk] Re: [shell-script] atualizar valor de variável


From: Sidney Souza
Subject: Re: [Bulk] Re: [shell-script] atualizar valor de variável
Date: Mon, 8 Dec 2014 10:32:20 -0200

Caro mestre Julio, essa construção que você demonstrou se equivale a funções estáticas ou eu estou falando bobagem?

Achei interessante a abordagem e gostaria de entender melhor o uso da mesma.

Se tiver um link para eu dar uma aprofundada, ficarei muito grato.

2014-12-08 9:59 GMT-02:00 Herbert Parentes Fortes Neto (hpfn) address@hidden [shell-script] <address@hidden>:
 

obrigado pela atenção de todos. vou ver se posto o script hoje.

tentarei explicar melhor o que quero e se precisar mudo o que escrevi.



On Mon, 8 Dec 2014 09:51:51 -0200
"'Julio C. Neves' address@hidden [shell-script]" <address@hidden> wrote:

> Fala Herbert,
> já vi alguns comentários na lista sobre esse pedaço de pg que vc postou e
> todos me parecem ter razão, isto é, alguém disse que o loop pode ser
> substituído por um tail (-F|-f|--follow) e aparentemente pode (e deve)
> mesmo;
> Alguém disse que o teu while era desnecessário e pelo trecho de prg que vc
> postou parece ser mesmo.
>
> Mas supondo que vc saiba o que está fazendo e essa construção seja mesmo
> necessária vc poderia fazer declarando esse while dentro de uma função que
> ficaria mais ou menos assim:
>
> declare -f PegaGrep
> function PegaGrep
> while true
> do
> grep texto /var/log/kern.log
> ip=$(echo "$grep_lines" | tail -n1 | sed_repetido)
> hora=$(echo "$grep_lines" | tail -n1 | sed_repetido)
> {
> echo $ip
> echo $hora
> } > /dev/tty
> [...]
>
> grep_lines=$(PegaGrep)
>
> repare que a saída de sua função seria somente o grep, já que o ip e a hora
> estão sendo explicitamente desviados para o /dev/tty e como o prg diz que a
> saída de PegaGrep ira para a variável $grep_lines, seus problemas acabaram.
>
> Mais uma vez insisto: a lógica que vc usou provavelmente não é a melhor,
> mas espero que esse macete sirva para muitos colegas de lista.
>
> Abcs,
> Julio
> *@juliobash*
> *Próximos cursos de Shell*
> *Cidade Local Período*
> *Rio de Janeiro EDX <http://edx.srv.br/> 09 a 13/03/15*
> Dou treinamento de *Shell* em qualquer cidade.
> Para mais detalhes, me mande um e-mail <address@hidden>.

>
>
> Em 7 de dezembro de 2014 14:22, Herbert Parentes Fortes Neto (hpfn)
> address@hidden [shell-script] <address@hidden> escreveu:
>
> >
> >
> > olá,
> >
> > vou ser breve para tentar ser claro. se necessário posto o script.
> >
> > tenho uma variável (grep_lines) que precisa ter seu valor atualizado
> > a cada volta do loop. mas para tentar organizar melhor o script
> > gostaria de colocar a declaração dela fora dele. isso também me
> > economiza digitação e seus erros.
> >
> > então tenho algo similar a isso:
> >
> > while True
> > do
> > grep_lines=$(grep texto /var/log/kern.log)
> > ip=$(echo "$grep_lines" | tail -n1 | sed_repetido)
> > hora=$(echo "$grep_lines" | tail -n1 | sed_repetido)
> > [...]
> >
> > o sed_repetido consegui resolver. mas gostaria de tirar a '$grep_lines'
> > do loop. tem um jeito automágico de atualizar/executar o valor de
> > uma váriavel sem ser atribuindo um novo valor para ela ? gostaria de
> > ser algo como:
> >
> > grep_lines=$(grep texto /var/log/kern.log)
> > while True
> > do
> > ip=$( jeito_magico_atualizar_grep_lines | tail -n1 | sed_repetido)
> > reg_in=$( jeito_magico_atualizar_grep_lines | tail -n1 | sed_repetido)
> > [...]
> >
> > é possível ?
> >
> > espero ter sido claro.
> >
> > abraços,
> > --
> > Herbert Parentes Fortes Neto (hpfn)
> >
> >

--
Herbert Parentes Fortes Neto (hpfn)



reply via email to

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