Comment obtenir des lignes contenant une chaîne dans un fichier?

11

Sous Linux, comment afficher des lignes contenant une chaîne dans un fichier texte, telles que:

search "my string"  file_name

Comment rendre la recherche sensible / insensible? Et comment afficher également les numéros de ligne?

Cordialement

alwbtc
la source

Réponses:

22

bien

grep -n "my string" file_name 

fera pour votre requête particulière. GREP est par défaut sensible à la casse et pour le rendre insensible à la casse, vous pouvez lui ajouter l'option -i. L' -noption affiche les numéros de ligne. Pour d'autres myriades d'options, je recommande

man grep

pour une capacité de correspondance de motifs plus intéressante du GREP.

kaji
la source
-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
Raj s
la source
1
On dirait que c'est une mauvaise réponse.
Alexander Tolkachev
1
De plus, les noms de variables à une seule lettre sont mauvais. Cet extrait de code serait beaucoup plus lisible avec une meilleure dénomination.
poussins