Buscar texto específico del archivo y generar la línea (script de Shell)


12

Supongamos que tengo una variable $ str1

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

Lo que quiero hacer es buscar esa parte en el archivo. El archivo contiene, por ejemplo:

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|

La salida debe ser:

20140121-21: 48: 26 | Joanne Frances | Pérez | 9173046751.000000 | 31 de marzo |

Actualización: Finalmente, sepa cuál es el problema que trató el problema echo $str1y se muestra, 20140121|Adrian Perez|lo que significa que realmente NO ESTÁ en el archivo. Jaaa! ¡Soy un desastre! -_-


simplemente puedes usar grep. por ejemplogrep $str filename.txt
mcantsin el

@mcantsin Lo intenté, no funcionó
joanne_

y cual es el error? - ¿Ninguna salida?
mcantsin

@mcantsin yup sin salida!
joanne_

Probé tu ejemplo y funciona perfectamente para mí. - ¿Seguro que no hay error tipográfico?
mcantsin

Respuestas:


12

Utilizar esta:

grep "$str" filename.txt

para evitar la mala interpretación de caracteres especiales.

Para saber más, consulte esto:

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.