[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Re: Como sinalizo que um parametor, lido pela entrada
From: |
Arthur Renato Mello |
Subject: |
Re: [shell-script] Re: Como sinalizo que um parametor, lido pela entrada padrão, terminou? |
Date: |
Tue, 18 Dec 2007 00:04:09 -0200 |
Andre,
"se [caminho do texto o qual será pesquisado] não for especificado,
lê da entrada padrão", nao quer dizer que o grep espera o caminho do
arquivo na entrada padrao, mas sim o texto propriamente dito.
No exemplo:
$ cat texto.txt
linha 1
linha 2
linha 3
Se passarmos o caminho do arquivo no grep:
$ grep "linha 2" texto.txt
linha 2
Caso eu nao passe o caminho do arquivo, o grep ficara esperando que eu
insira o texto na entrada padrao. Para encerrar a entrada eu uso
Ctrl-D:
$ grep "linha 2"
texto.txt
*Ctrl-D* (Nao o texto mas sim as teclas Ctrl + D :)
Porem nesse caso o grep nao encontra nada, pois em "texto.txt" nao
existe o padrao "linha 2".
Mas nesse caso:
grep "linha 2"
linha 1
linha 2
linha 2
linha 3
*Ctrl-D*
Eu digitei "linha 1" o que nao casa com o padrao, o grep nao faz nada.
Porem, quando eu digito "linha 2", que casa com o padrao, e teclo
Enter o grep automaticamente repete a linha.
O uso do grep com textos da entrada padrao eh muito util para redirecionamentos.
Como nesse caso INUTIL mas que exemplifica bem :)
$ cat texto.txt | grep "linha 2"
linha 2
Espero ter sido claro. E se cometi algum erro o pessoal da lista
podera corrigir :D
[]s
Arthur
On Dec 17, 2007 10:35 PM, andre.andrade1 <address@hidden> wrote:
>
>
>
>
>
>
> Me desculpem, pessoal, eu fui pouco claro.
> A minha duvida, na realidade, refere-se a um comentário do livro do
> julio neves(programação shell linux), 6 edição, pagina 24.
> Ele fala mais ou menos isso:
> A sintaxe do comando grep é: grep [-opçoes] [texto a ser procurado]
> [caminho do texto o qual sera pesquisado]
> e, está escrito mais ou menos isso: "se [caminho do texto o qual será
> pesquisado] não for especificado, lê da entrada padrão".
> Pelo que entendi, se eu der um "$grep -i palavra" e não especificar o
> arquivo alvo do grep, o shell espera que eu coloque o caminho do
> arquivo na stdin. Ao colocar o endereço do arquivo na stdin, como eu
> sinalizo ao shell que eu já terminei de colocar o caminho para que o
> grep seja executado?
>
>
- Re: [shell-script] Como sinalizo que um parametor, lido pela entrada padrão, terminou?, mop, 2007/12/14
- Re: [shell-script] Como sinalizo que um parametor, lido pela entrada padrão, terminou?, Flavio Junior, 2007/12/14
- Re: Como sinalizo que um parametor, lido pela entrada padrão, terminou?, andre.andrade1, 2007/12/17
- Re: [shell-script] Re: Como sinalizo que um parametor, lido pela entrada padrão, terminou?,
Arthur Renato Mello <=
- Re: [shell-script] Re: Como sinalizo que um parametor, lido pela entrada padrão, terminou?, Alan Diones, 2007/12/18
- Re: Como sinalizo que um parametor, lido pela entrada padrão, terminou?, andre.andrade1, 2007/12/18
- Re: [shell-script] Re: Como sinalizo que um parametor, lido pela entrada padrão, terminou?, Flavio Junior, 2007/12/18