Come ottenere linee che contengono una stringa in un file?


12

In Linux, come posso visualizzare le righe che contengono una stringa in un file di testo, come ad esempio:

search "my string"  file_name

Come faccio a rendere sensibile / insensibile il caso di ricerca? E come posso visualizzare anche i numeri di riga?

Saluti

Risposte:


23

bene

grep -n "my string" file_name 

farà per la tua query particolare. Per impostazione predefinita, GREP fa distinzione tra maiuscole e minuscole e per renderlo insensibile alle maiuscole è possibile aggiungere l'opzione -i. L' -nopzione visualizza i numeri di riga. Per altre miriadi di opzioni, mi raccomando

man grep

per una più interessante capacità di abbinamento dei modelli di GREP.


-1
#!/bin/bash
cd $HOME/Desktop
s=xda
m=$(grep -n "$s" $HOME/Desktop/tt.txt )
if [ "$m" = "$s" ] ;then
    echo "success"
else
  echo "fail"
fi

1
Sembra che questa sia una risposta sbagliata.
Alexander Tolkachev,

1
Inoltre, i nomi delle variabili a lettera singola sono errati. Questo frammento di codice sarebbe molto più leggibile con una migliore denominazione.
pulcini
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.