Fala Paulo, o grep -c não mostra a linha, mostra só o número de linhas que
possuem a cadeia pesquisada.
Se a cadeia puder ocorrer mais de uma vez na linha, o correto seria fazer:
grep -o REGEX ARQUIVO | wc -l
Como estou no celular, não dá para mostrar, mas experimente fazer:
grep -c a <<< abracadabra
E depois:
grep -o a <<< abracadabra | wc -l
Em 10 de jul de 2016 19:05, "address@hidden <mailto:address@hidden>
[shell-script]"
<address@hidden <mailto:address@hidden>> escreveu:
Olá mestre Julio, não entendi :) nesse caso de uma linha possuir mais de uma
data,
o 'grep -c' vai somar cada casamento ao invés de considerar uma linha?
A saída normal do grep, mesmo que haja dois casamentos na mesma linha, é mostrar
apenas uma vez a linha, não? Agora fiquei na dúvida rs vou pegar um arquivo aqui
pra testar.
Abraços Paulo Bettega
On 10-07-2016 00:10, 'Julio C. Neves' address@hidden <mailto:address@hidden>
[shell-script] wrote:
>
>
> Fala Paulo,
> A opção -c devolve a qtd de linha que têm a cadeia. Assim sendo, se alguma
linha possuir mais de uma data,
> dará zebra.
>
> Em 9 de jul de 2016 22:02, "address@hidden <mailto:address@hidden>
<mailto:address@hidden <mailto:address@hidden>> [shell-script]"
> <address@hidden <mailto:address@hidden>
<mailto:address@hidden <mailto:address@hidden>>> escreveu:
>
> __
>
>
> Olá Rodrigo, mais um pitaco, se for só pra pegar o número de linhas, o grep
> tem a opçao -c que retorna o número de linhas casadas por arquivo.
> Pelo que vc postou a pesquisa é só em um arquivo então "grep -c $DATA
/var/error.log"
> deve resultar o mesmo que "grep $DATA /var/error.log | wc -l"
>
> Abraços Paulo Bettega
>
> On 09-07-2016 18:39, Rodrigo Cunha address@hidden <mailto:address@hidden>
<mailto:address@hidden <mailto:address@hidden>>
> [shell-script] wrote:
> >
> >
> > srs.
> > tenho um script com a variavel DATA:
> > DATA=`/bin/date +%Y%m%d`
> > e quero criar uma outra variavel utilizando uma pipeline que "grepa" o
valor da variavel $DATA em um
> arquivo.
> > Testei da forma abaixo mas não consegui, alguém sabe como fazer isso?!
> >
> > varerror=$((cat ../var/error.log |grep $DATA | wc -l))
> >
> >
> > --
> > Atenciosamente,
> > Rodrigo da Silva Cunha
> >
> >
> > ----------------------------------------------------------
> > Enviado por: Rodrigo Cunha <address@hidden <mailto:address@hidden>
<mailto:address@hidden <mailto:address@hidden>>>
> > ----------------------------------------------------------
>
>
> ----------------------------------------------------------
> Enviado por: "Julio C. Neves" <address@hidden <mailto:address@hidden>>
> ----------------------------------------------------------