Dans Powershell, comment répertorier (de manière récursive) tous les fichiers d'un répertoire contenant du texte correspondant à une expression régulière donnée? Les fichiers en question contiennent de très longues lignes de texte incompréhensible. Je ne souhaite donc pas voir la ligne correspondante, mais uniquement le nom du fichier.
la source
select -Unique
... cool, a appris quelque chose de nouveau. Cela fonctionne parfaitement, merci!Notez que, dans powershell v1.0 et v2.0, vous devez spécifier le premier paramètre de position (chemin) avec lequel travailler
-Recursion
documentation technique
la source
Utilisez la commande ci-dessous dans le répertoire
[SEARCH_PATTERN]
dans lequel vous souhaitez exécuter le "grep" et modifiez-la pour correspondre à ce que vous souhaitez faire correspondre. C'est récursif, en parcourant tous les fichiers du répertoire.http://www.jamescoyle.net/how-to/1205-how-to-use-powershell-to-recursively-search-for-text-within-files-on-windows
la source
Select-String a un
-List
paramètre à cet effet:- ss64.com
Vous pouvez l'utiliser comme ceci:
Voici quelques exemples de résultats (recherche dans le SDK de Windows
ERROR_SUCCESS
):Si vous voulez récupérer les
FileInfo
objets réels (au lieu du chemin relatif et d'un résultat de correspondance unique), vous pouvez l'utiliser comme ceci:la source