Cerca testo specifico dal file e genera la riga (script Shell)


12

Supponiamo che io abbia una variabile $ str1

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

Quello che voglio fare è cercare quella parte nel file. Il file contiene, ad esempio:

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|

L'output dovrebbe essere:

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

Aggiornamento: finalmente sapere quale diamine è il problema provato echo $str1e produce output 20140121|Adrian Perez|che in realtà non si trova nel file. Haaa! Sono un tale casino! -_-


puoi semplicemente usare grep. ad es.grep $str filename.txt
mcantsin,

@mcantsin L'ho provato, non ha funzionato
joanne_

e qual è l'errore? - Nessuna uscita?
mcantsin,

@mcantsin yup no output!
joanne_

Ho testato il tuo esempio e funziona perfettamente per me. - Sicuro che non ci siano errori di battitura?
mcantsin,

Risposte:


12

Usa questo:

grep "$str" filename.txt

per evitare interpretazioni errate di caratteri speciali.

Per saperne di più, fai riferimento a questo:

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.