70 votes

Comment rechercher des chaînes de caractères dans des fichiers comme dans Windows sans le singe de recherche ?

J'utilise Ubuntu sur VMWare mais je ne peux pas me connecter à Internet en raison de restrictions de sécurité.

Je me demandais s'il existait un moyen de rechercher des chaînes de caractères dans le terminal et de trouver la ligne où se trouve la chaîne dans le fichier.

110voto

Panther Points 96601

Il y a presque trop d'options à énumérer

grep -r 'pattern_to_match' directory_to_search

Produira le nom du fichier et la ligne complète correspondant au motif.

32voto

xxbinxx Points 509

La meilleure que j'utilise est la commande grep avec les options -ri (recherche récursive et insensible à la casse) :

$ grep -r <text_pattern_to_search> directory_or_path_to_search

des options qui pourraient vous être utiles :

    -i - case insensitive
    -r, --recursive  like --directories=recurse
    -R, --dereference-recursive  likewise, but follow all symlinks
      --include=FILE_PATTERN  search only files that match FILE_PATTERN
      --exclude=FILE_PATTERN  skip files and directories matching FILE_PATTERN
      --exclude-from=FILE   skip files matching any file pattern from FILE
      --exclude-dir=PATTERN  directories that match PATTERN will be skipped.

Pour une information approfondie, vous pouvez faire grep --help o man grep dans le terminal linux.

Cheers

9voto

αғsнιη Points 33236

Si vous voulez trouver uniquement le numéro de ligne où se trouve le sting dans le fichier, utilisez ceci :

grep -n '/string_To_Find/=' directory/file_Name

Si vous voulez trouver le numéro de ligne et également afficher le nom complet de la ligne où se trouve la chaîne de caractères, utilisez ceci :

grep -n 'string_To_Find' directory/file_Name

Et si vous voulez seulement trouver le nom complet de la ligne où se trouve la chaîne, utilisez ceci :

grep -r 'string_To_Find' directory/file_Name

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X