Comment utiliser les commandes FINDSTR et Select-String dans Windows 11/10

Avez-vous déjà entendu parler de FINDSTR et Select-String ? Select-String est une applet de commande utilisée pour rechercher du texte et des modèles dans des chaînes et des fichiers d'entrée. Il est similaire à grep sous Linux et FINDSTR sous Windows . Dans ce guide, nous voyons quoi et comment utiliser les commandes FINDSTR(FINDSTR ) et Select-String dans Windows 11/10.

Comment utiliser les commandes FindSTR et Select-String

UN 

Qu'est-ce que FINDSTR et comment utiliser FINDSTR

FINDSTR est une commande utilisée pour rechercher un texte spécifique dans des fichiers sous Windows . Find String lorsqu'il est mis en bref est devenu FINDSTR . Il est également utilisé pour rechercher des fichiers contenant un texte spécifique. Il existe différentes commandes FINDSTR pour effectuer diverses fonctions. Il a été publié pour la première fois avec le kit de ressources (Resource Kit)Windows 2000 sous le nom de qgrep(qgrep) . C'est un outil intégré à Windows et son fichier est disponible au format .exe. FINDSTR ne recherche pas les octets nuls comme les espaces au format Unicode .

Il existe quelques règles de base pour utiliser la commande findstr sur l'invite(Command Prompt) de commande ou d'autres interpréteurs de ligne de commande(Command Line Interpreters) , qui sont développés par Microsoft . Ils sont:

  • Chaque commande FINDSTR doit contenir une chaîne suivie d'un nom de fichier.
  • Vous pouvez utiliser des caractères littéraux et des méta-caractères dans les commandes FINDSTR . Les caractères littéraux n'ont pas de signification particulière dans la syntaxe. Les lettres et les chiffres sont appelés caractères littéraux. Les méta-caractères sont des symboles qui ont des significations spécifiques pour chacun. Voici les méta-caractères acceptés dans la syntaxe et leurs significations.

Meta-character

Value

.

Wildcard – Any character

*

Repeat – Zero or more occurrences of the previous character or class.

^

Beginning line position – Beginning of the line.

$

Ending line position – End of the line.

[class]

Character class – Any one character in a set.

[^class]

Inverse class – Any one character not in a set.

[x-y]

Range – Any characters within the specified range.

\x

Escape – Literal use of a meta-character.

\<string

Beginning word position – Beginning of the word.

string\>

Ending word position – End of the word.

  • Vous devez créer un fichier texte avec des critères de recherche sur une ligne distincte lorsque vous souhaitez rechercher plusieurs chaînes.
  • Utilisez(Use) des espaces entre les chaînes pour rechercher plusieurs chaînes dans une seule commande, à l'exception de la syntaxe avec /c.

Paramètres et leur signification dans la syntaxe findstr

Paramètre

La description

/b

Correspond(Matches) au modèle de texte s'il se trouve au début d'une ligne.

/e

Correspond(Matches) au modèle de texte s'il se trouve à la fin d'une ligne.

/l

Traite littéralement les chaînes de recherche.

/r

Traite les chaînes de recherche comme des expressions régulières. Ce sont les paramètres par défauts.

/s

Recherche(Searches) le répertoire courant et tous les sous-répertoires.

/je

Ignore la casse des caractères lors de la recherche de la chaîne.

/X

Imprime des lignes qui correspondent exactement.

/v

Imprime uniquement les lignes qui ne contiennent pas de correspondance.

/n

Imprime le numéro de ligne de chaque ligne qui correspond.

/m

Imprime uniquement le nom du fichier si un fichier contient une correspondance.

/o

Imprime le décalage de caractère avant chaque ligne correspondante.

/p

Ignore les fichiers contenant des caractères non imprimables.

/hors ligne]

N'ignore pas les fichiers dont l'attribut hors ligne est défini.

/f:<fichier>

Obtient une liste de fichiers à partir du fichier spécifié.

/c:<chaîne>

Utilise le texte spécifié comme chaîne de recherche littérale.

/g:<fichier>

Obtient les chaînes de recherche du fichier spécifié.

/d :<liste de répertoires>

Recherche(Searches) la liste de répertoires spécifiée. Chaque répertoire doit être séparé par un point-virgule (;), par exemple  dir1;dir2;dir3.

/a:<attributcouleur>

Spécifie les attributs de couleur avec deux chiffres hexadécimaux. Tapez  pour plus d'informations.color
/?

<chaîne>

Spécifie le texte à rechercher dans  filename . Obligatoire.

<span “>[\<drive> :][<path>]<filename>[…]

Spécifie l'emplacement et le fichier ou les fichiers à rechercher. Au moins un nom de fichier est requis.

/?

Affiche l'aide à l'invite de commande.

Utilisation des commandes findstr

1] Pour rechercher le mot microsoft ou windows dans le fichier xy, vous devez utiliser :

findstr microsoft windows x.y

2] Pour rechercher le mot Microsoft Windows dans le fichier xy, vous devez utiliser :

findstr /c:"microsoft windows" x.y

Dans la commande ci-dessus /cest utilisée pour rechercher le texte spécifié "Microsoft Windows" dans le fichier.

3] Si vous voulez trouver les occurrences du mot Microsoft avec un M majuscule dans le fichier texte twc.txt, vous devez utiliser :

findstr Microsoft twc.txt

4] Si vous souhaitez rechercher un mot spécifique Microsoft dans un répertoire et ses sous-répertoires sans donner d'importance aux casses de type, utilisez :

findstr /s /i Microsoft *.*

Dans la syntaxe ci-dessus, /sest utilisé pour rechercher le répertoire courant et ses sous-répertoires. /iest utilisé pour ignorer la casse de type (M majuscule) dans la chaîne Microsoft .

5] Si vous voulez trouver des lignes qui commencent par To avec plusieurs espaces avant le mot et que vous voulez afficher le numéro de ligne où les chaînes se sont produites, utilisez :

findstr /b /n /r /c:^ *To *.bas

6] Si vous souhaitez rechercher plusieurs chaînes dans plusieurs fichiers avec des critères de recherche dans stringlist.txt et une liste de fichiers dans filelist.txt et que vous souhaitez voir les résultats stockés dans le fichier result.out, utilisez :

findstr /g:stringlist.txt /f:filelist.txt > results.out

7] Si vous voulez trouver les fichiers qui contiennent le mot thewindowsclub dans un répertoire particulier et ses sous-répertoires, utilisez :

findstr /s /i /m \<thewindowsclub\> *.*

8] Si vous souhaitez rechercher des fichiers contenant le thewindowsclub et d'autres mots commençant par like thesis, thermomètre, etc., utilisez :

findstr /s /i /m \<the.* *.*

Ce sont les façons dont vous pouvez utiliser les commandes findstr dans les interpréteurs de ligne de commande comme Command Prompt , etc. Vous devez comprendre chaque paramètre et sa fonction ainsi que les méta-caractères et leur signification pour écrire la syntaxe et utiliser la commande findstr régulièrement.

Qu'est-ce que Select-String et ses paramètres

Imaginez(Imagine) que vous écrivez des morceaux de code dans PowerShell et que vous avez perdu la trace de certaines chaînes et de certains textes dans ce fichier PowerShell . Vous devez trouver cela dans plusieurs milliers de lignes de code dans des milliers de chaînes et de mots. Il y a la commande Select-String qui vous permet de rechercher des chaînes et du texte dans ces fichiers d'entrée PowerShell . Il est similaire à grep sous Linux .

Select-String est une applet de commande utilisée pour rechercher du texte et des modèles dans des chaînes et des fichiers d'entrée. Il est similaire à grep sous Linux et FINDSTR sous Windows . Lorsqu'il est utilisé Select-String pour rechercher du texte, il trouve la première correspondance dans chaque ligne et affiche le nom du fichier, le numéro de ligne et la ligne entière où la correspondance s'est produite. Il peut être utilisé pour trouver plusieurs correspondances par ligne ou pour afficher du texte avant ou après la correspondance, ou obtenir des résultats dans des expressions booléennes telles que True ou False . Vous pouvez également l'utiliser pour afficher tout le texte à l'exception de la correspondance de l'expression que vous utiliser dans la commande. Les WildCards que vous utilisez dans FINDSTRpeut également être utilisé dans Select-String . De plus, Select-String fonctionne avec différents encodages de fichiers comme ASCII , Unicode , etc. Il utilise Byte-Order-Mark ( BOM ) pour déterminer l'encodage du fichier. Si la nomenclature(BOM) est manquante dans le fichier, Select-String supposera que le fichier est UTF8 .

Paramètres de Select-String

Microsoft a imaginé et développé les paramètres ci-dessous qui seront utilisés dans la syntaxe.

-AllMatches

Il est utilisé pour rechercher toutes les correspondances d'une ligne contrairement à la première correspondance de la ligne que Select-Sting fait normalement.

-CaseSensitive

Cela signifie que la correspondance est sensible à la casse. Par défaut, Select-String n'est pas sensible à la casse.

-Context

Il est utilisé pour capturer le nombre spécifié de lignes que vous entrez avant et après la ligne du match. Si vous entrez 1, il capture une ligne avant et après le match.

-Culture

Il existe certaines cultures comme l'ordinal, l'invariant, etc. dans le codage. Ce paramètre est utilisé pour spécifier la culture dans la syntaxe.

-Encoding

Il est utilisé pour spécifier le format d'encodage du texte dans des fichiers tels que ASCII , UTF8 , UTF7 , Unicode , etc.

-Exclude

Ce paramètre est utilisé pour exclure certains textes du fichier.

-Include

Ce paramètre est utilisé pour inclure du texte dans le fichier.

-InputObject

Il est utilisé pour spécifier le texte à rechercher.

-List

Il permet de récupérer la liste des fichiers correspondant au texte.

-LiteralPath

Il est utilisé pour spécifier le chemin de la recherche.

-NoEmphasis

Généralement, Select-String met en surbrillance la correspondance dans le fichier. Ce paramètre est utilisé pour éviter la surbrillance.

-NotMatch

Il est utilisé pour trouver le texte qui ne correspond pas au modèle spécifié.

-Path

Il est utilisé pour spécifier le chemin à rechercher avec l'utilisation de caractères génériques.

-Pattern

Le paramètre est utilisé pour trouver la correspondance dans chaque ligne en tant que modèle.

-Quiet

Ce paramètre est utilisé pour obtenir la sortie dans des valeurs booléennes telles que (Boolean)True ou False .

-Raw

Il est utilisé pour voir uniquement les objets correspondants plutôt que les informations de correspondance(Match) .

-SimpleMatch

Le paramètre est utilisé pour spécifier une correspondance simple plutôt qu'une correspondance d'expression régulière.

Différence entre FINDSTR et Select-String

FINDSTR est un fichier exécutable antérieur à l'ère PowerShell utilisé pour rechercher du texte et des chaînes dans des fichiers. Select-String est une applet de commande PowerShell utilisée pour rechercher du texte et des modèles dans des fichiers. Par rapport à FINDSTR , Select-String est l'applet de commande la plus puissante et la plus complexe qui affiche de nombreuses informations sur la correspondance.

Quel est l' équivalent PowerShell de grep ?(PowerShell)

Select-String est l' équivalent PowerShell de grep disponible sur (PowerShell)Windows . Il fonctionne de la même manière que grep et donne des informations détaillées sur la correspondance en fonction des paramètres que nous utilisons dans la syntaxe.

FINDSTR fonctionne-t-il sur les fichiers Word ?

Oui, FINDSTR fonctionne sur les fichiers Word . Mais il ne peut pas afficher les correspondances même si les chaînes que vous avez entrées sont présentes dans le fichier. Il peut vous donner des résultats dans des fichiers binaires au format .doc mais pas au format .docx pour des raisons techniques inconnues.

Lecture connexe(Related Read) : Comment vérifier la version de PowerShell dans Windows.(How to check the PowerShell version in Windows.)



About the author

Je suis un développeur iPhone et macOS avec de l'expérience à la fois dans Windows 11/10 et dans la toute nouvelle plate-forme iOS d'Apple. Avec plus de 10 ans d'expérience, j'ai une compréhension approfondie de la façon de créer et de gérer des fichiers sur les deux plateformes. Mes compétences vont au-delà de la simple création de fichiers - j'ai également une solide connaissance des produits Apple, de leurs fonctionnalités et de leur utilisation.



Related posts