Pesquise texto específico do arquivo e produza a linha (script Shell)


12

Suponha que eu tenha uma variável $ str1

str1="20140121-21:48:26|Joanne Frances|"

O que eu quero fazer é pesquisar essa parte do arquivo. O arquivo contém, por exemplo:

20140121-21:48:26|Joanne Frances|Perez|9173046751.000000|Mar 31|
20140121-21:50:28|Nikko|Real|9065887272.000000|Mar 21|
20140121-22:22:53|Czarina|Revilla|9999999999.000000|Jan 21|

A saída deve ser:

20140121-21: 48: 26 | Joanne Frances | Perez | 9173046751.000000 | 31 de março |

Atualização: Finalmente, saiba qual é o problema que o problema tentou echo $str1e ele gera, 20140121|Adrian Perez|o que significa que NÃO ESTÁ realmente no arquivo. Haaa! Eu sou uma bagunça! -_-


você pode simplesmente usar grep. por exemplogrep $str filename.txt
mcantsin 21/01

@mcantsin Tentei fazer isso, não funcionou
joanne_

e qual é o erro? - Sem saída?
precisa saber é o seguinte

@mcantsin yup sem saída!
joanne_

Eu testei o seu exemplo e funciona perfeitamente para mim. - Claro que não há erro de digitação?
Mcantsin

Respostas:


12

Usa isto:

grep "$str" filename.txt

para impedir a interpretação incorreta de caracteres especiais.

Para saber mais, consulte o seguinte:

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.