Comment rechercher des fichiers contenant une chaîne de texte particulière en utilisant MSBuild?Comment rechercher des fichiers contenant une chaîne de caractères particulière?
Répondre
Merci les gars! J'apprécie toutes vos réponses rapides! J'ai essayé Grep mais j'ai besoin de lire le fichier xml pour voir le résultat.
Je viens de découvrir que nous pouvons utiliser la tâche FilterByContent dans MSBuild Extension Pack qui nous donne un résultat direct dans les propriétés & éléments. J'aimerais vous le faire parvenir au cas où vous en auriez besoin. Un exemple d'utilisation est le suivant:
<Target Name="ttt">
<ItemGroup>
<files Include="d:\temp\test\**" />
</ItemGroup>
<MSBuild.ExtensionPack.FileSystem.File TaskAction="FilterByContent" RegexPattern="abbcc" Files="@(files)" >
<Output TaskParameter="IncludedFileCount" PropertyName="out"/>
</MSBuild.ExtensionPack.FileSystem.File>
<Message Text="ttt:$(out)" />
</Target>
Nam.
Vous pouvez trouver une tâche "grep" dans le projet MSBuild Contrib sur CodePlex. Je ne l'ai pas utilisé moi-même cependant.
Il n'est pas clair si vous voulez rechercher le texte dans le nom ou dans le fichier lui-même.
Si vous souhaitez simplement une liste de fichiers que leur nom correspondent à des critères particuliers (simples) Je suggère d'utiliser la ItemGroup
comme ceci:
Les Grep
taks du projet MSBuild Contrib regarderait comme celui-ci
<PropertyGroup>
<MSBuildContribCommonTasksAssembly>$(MSBuildExtensionsPath)\MSBuildContrib\MSBuildContrib.Tasks.dll</MSBuildContribCommonTasksAssembly>
</PropertyGroup>
<UsingTask TaskName="MSBuildContrib.Tasks.Grep" AssemblyFile="$(MSBuildContribCommonTasksAssembly)" Condition="Exists('$(MSBuildContribCommonTasksAssembly)')" />
<ItemGroup>
<FilesToSearch Include="**\*.cs" />
</ItemGroup>
<!-- very simple search -->
<Grep InputFiles="@(FilesToSearch)" OutputFile="out.xml" Pattern="Error" />
<!-- slightly more complicated search (search and extract info) -->
<Grep InputFiles="@(FilesToSearch)"
OutputFile="out.xml"
Pattern="// (?'Type'TODO|UNDONE|HACK): (\[(?'Author'\w*),(?'Date'.*)\])? (?'Text'[^\n\r]*)" />
la tâche Grep va générer le fichier out.xml qui peut ensuite être utilisé pour lire des informations et utiliser dans la processus de construction.
- 1. Aide à l'expression régulière particulière - Non contenant une chaîne de caractères
- 2. Index de caractères d'une chaîne contenant des caractères Unicode
- 3. Regexp correspondance des caractères majuscules, sauf une chaîne particulière
- 4. Comment supprimer des caractères spécifiques d'une chaîne particulière en Java?
- 5. Parsing une chaîne contenant des caractères échappées en Java
- 6. Traiter une chaîne contenant plusieurs encodages de caractères
- 7. Dans Gtk, comment rechercher un ListStore pour la ligne contenant une valeur particulière?
- 8. Comment lire un fichier codé ANSI contenant des caractères spéciaux
- 9. Django rechercher des chaînes contenant des espaces
- 10. Comment puis-je analyser une chaîne contenant des caractères génériques et des classes de caractères dans Ruby?
- 11. comment trouver les fichiers contenant une chaîne en utilisant egrep
- 12. Jquery: comment puis-je sélectionner des cellules d'une table contenant une chaîne de caractères html?
- 13. Comment rediriger vers une chaîne de requête URL contenant des caractères non-ascii dans DJANGO?
- 14. Comment puis-je inverser une chaîne contenant des caractères de combinaison en Perl?
- 15. Chaîne multiligne contenant des caractères spéciaux en javascript?
- 16. recevoir une chaîne avec des caractères
- 17. Je veux sélectionner une liste particulière de mots contenant certains caractères en utilisant php
- 18. RTFString contenant des caractères spéciaux NSASCIIStringEncoding?
- 19. Rechercher des fichiers: Obtenir un tampon dired de fichiers spécifiés par un filtre contenant du texte
- 20. Comment mélanger des caractères dans une chaîne
- 21. Sélectionnez les fichiers contenant une certaine sous-chaîne dans MSBuild
- 22. PHP: remplacer une chaîne d'une chaîne particulière par une chaîne particulière
- 23. Comment obtenir une partie particulière d'une chaîne
- 24. Est-il possible de rechercher des fichiers d'extension particulière dans l'ensemble de l'appareil?
- 25. Utilisez grep pour rechercher une chaîne dans les fichiers, inclure des sous-dossiers
- 26. sed flux éditeur unix commande linux: comment conserver un paragraphe avec une chaîne de caractères particulière
- 27. Comment rechercher des fichiers contenant les fins de ligne dos (CRLF) avec grep sur Linux?
- 28. Comment indexer et rechercher des fichiers .doc
- 29. Rechercher une chaîne multi-octets dans une autre chaîne de caractères multi-octets
- 30. rechercher des fichiers texte
Veuillez ne pas mettre [MSBuild] dans le titre. Vous l'avez déjà dans l'étiquette. –