Existe-t-il un utilitaire similaire grep
disponible à partir de l'invite de commande Windows, ou existe-t-il un outil tiers pour cela?
179
Il existe un outil de ligne de commande appelé FINDSTR
qui est fourni avec tous les systèmes d'exploitation de classe Windows NT (tapez FINDSTR /?
dans une fenêtre d'invite de commandes pour plus d'informations). Il ne prend pas en charge tout ce que grep
fait mais cela peut être suffisant pour vos besoins.
netstat -n | FINDSTR 3389
PowerShell (inclus en standard sur Windows 7 / 2008R2, facultatif pour XP / 2003 / Vista / 2008) qui inclut l'
select-string
applet de commande à cet effet.la source
Grep pour Windows par GnuWin Project (02/10/2014: il est obsolète, voir les commentaires ci-dessous)
la source
comme mentionné, findstr fonctionne très bien. exemple :
C:> dir | findstr Windows
06/11/2013 à 21h55 Windows
la source
Cygwin grep et plus;)
la source
J'ai également trouvé un autre moyen d'utiliser les fonctionnalités de type GREP dans Windows 7 et supérieur sans aucune application supplémentaire à installer et sur les systèmes plus anciens, vous pouvez utiliser installer Powershell.
Dans Powershell , l'utilisateur peut utiliser Where-Object, il dispose d'un ensemble assez complet de fonctionnalités qui fournit toutes les fonctionnalités de GREP et plus encore.
J'espère que ça aide.
la source
Je suis surpris que personne n'ait mentionné FINDSTR . Je ne suis pas un poweruser grep, mais findstr fait ce dont j'ai besoin, filtrer les fichiers et stdin, avec un support regex primitif. Livré avec Windows et tout ça. (Edit: Eh bien, quelqu'un a mentionné findstr, il est tard je suppose)
la source
GnuWin32 mérite d'être mentionné, il fournit une version Win32 native de tous les outils Linux standard, y compris grep, file, sed, groff, indent, etc.
Et il est constamment mis à jour lorsque de nouvelles versions de ces outils sont publiées.
la source
Sous Windows, j'utilise Far Manager pour la recherche de fichiers. Licence BSD, fonctionne dans la console, permet de gagner du temps lors de la saisie des paramètres cmdline. Voici sa boîte de dialogue de recherche invoquée par Alt-F7.
la source
Mise à jour: ce n'était pas vrai lorsque la question a été posée à l'origine, mais maintenant Microsoft permet d' installer le sous-système Windows pour Linux , et Windows exécutera alors grep. Dans PowerShell, exécutez:
la source
UnxUtils est un excellent ensemble d'utilitaires Unix qui fonctionnent sous Windows. Il a grep, sed, gawk, etc.
la source
Un excellent utilitaire de recherche de fichiers très rapide, Agent Ransack , prend en charge la recherche d'expression régulière. Il s'agit principalement d'un utilitaire GUI, mais une interface de ligne de commande est également disponible.
la source
Dans le reskit Windows, il y a un utilitaire appelé "qgrep". Vous l'avez peut-être déjà sur votre boîte. ;-) Il est également livré avec la commande "tail", merci mon Dieu!
la source
Bien que techniquement pas grep ni ligne de commande, Microsoft Visual Studio et Notepad ++ ont tous deux une très bonne fonctionnalité de recherche dans les fichiers avec une prise en charge complète des expressions régulières. Je me retrouve à les utiliser fréquemment même si j'ai également la version CygWin de grep disponible sur la ligne de commande.
la source
J'ajouterai mon 0,02 $ à ce fil. dnGREP est un excellent outil grep open source pour Windows qui prend en charge l'annulation, l'intégration de l'explorateur Windows, la recherche dans les PDF, les zips, les DOC et un tas d'autres choses ...
la source
Oui, il n'y a qu'un seul programme pour PC Windows qui a une interface graphique solide et c'est un utilitaire essentiel pour moi. Je travaille en tant que développeur et sur tous les ordinateurs que j'ai, installez d'abord le programme XFind. Il a été créé en 1997 et jusqu'à présent la version est 1.0 et jusqu'à présent fonctionne et c'est le meilleur. Souvent, j'ai besoin de rechercher une chaîne dans un " .cs", " .aspx", " .sct" (fichier de code de formulaire Visual FoxPro) ou simplement " . *" Et XFind scanne tous les fichiers et me montre des fichiers et une autre grande chose est que vous pouvez regarder où se trouve la chaîne dans le fichier. XFind a également une sorte d'éditeur. S'il s'agit d'un fichier binaire, il affichera la chaîne trouvée. Essayez-le et utilisez-le pour toujours si vous êtes développeur comme moi.
la source
Vous avez évidemment reçu de nombreuses recommandations différentes.
Mon choix personnel pour un utilitaire tiers gratuit est: Agent Ransack
Téléchargement de l'agent Ransack
Malgré son nom quelque peu déroutant, il fonctionne bien et peut être utilisé de différentes manières pour trouver des fichiers.
Bonne chance
la source
la busybox tout en un contient grep / egrep / sed / awk et BEAUCOUP plus
l'obtenir de:
Mise à jour: plus disponible - ou certains plus anciens
la source
Bare Grep est bien si vous voulez une interface graphique. Gnu grep est bon pour la CLI
la source
Si un produit payant ne vous dérange pas, PowerGREP est mon préféré.
la source
Nous avons récemment utilisé PowerGREP pour des opérations en masse assez avancées sur des milliers de fichiers. Y compris la recherche de regex dans le contenu des fichiers PDF et la modification de documents PDF à grande échelle.
Cela en vaut la peine si vous voulez gagner du temps sur le travail manuel. Vous pouvez l'essayer avant d'acheter je pense.
la source
Si vous devez utiliser Windows nu, en plus de l'option Powershell indiquée ci-dessus, vous pouvez utiliser VBScript, qui prend en charge RegEx décent.
MS a également une zone de script décente sur Technet avec une tonne d'exemples pour les administrateurs.
la source
Essayez simplement l'utilitaire java LikeGrep. Cela peut vous aider dans de très nombreux cas. Comme vous le souhaitez, il peut également remplacer du texte, trouvé dans des fichiers. Il garantit son travail sur des fichiers volumineux (jusqu'à 8 Go testés)
la source
Comme mentionné ci-dessus, le projet gnuwin32 a une version Windows CLI de grep.
Si vous voulez quelque chose avec une interface graphique, je recommanderais l'outil (open-source) AstroGrep .
la source
Cela fait un moment que je ne les ai pas utilisés, mais Borland (Embarcadero maintenant) a inclus un grep en ligne de commande avec leur compilateur C / C ++. Depuis quelque temps, ils mettent à disposition leur version 5.5 en téléchargement gratuit après leur inscription.
la source
Il existe un utilitaire grep commercial disponible chez Oak Road Systems .
la source
Je recommande PowerGrep
J'ai dû faire un projet de découverte électronique il y a plusieurs années. J'ai trouvé que cela
fisdstr
avait certaines limites, surtout que fisdstr finirait par échouerle script devait rechercher dans des milliers de fichiers en utilisant une dizaine de termes / expressions de recherche.
Le grep de Cygwin fonctionnait beaucoup mieux , il ne s'étouffait pas souvent, mais finalement je suis allé à PowerGrep parce que l'interface graphique permettait de dire beaucoup plus facilement quand et où il s'était écrasé, et il était également très facile d'éditer toutes les conditions et de sortir que Je voulais. Finalement, PowerGrep était le plus fiable des trois.
la source
Je sais que c'est un sujet un peu ancien, mais voici une autre chose que vous pouvez faire. Je travaille sur une VM de développeur sans accès à Internet et avec un espace disque libre assez limité, j'ai donc utilisé le Java installé dessus.
Compilez un petit programme java qui imprime les correspondances regex sur la console. Placez le jar quelque part sur votre système, créez un lot pour l'exécuter et ajoutez le dossier à votre variable PATH:
JGrep.java:
c: \ jgrep \ jgrep.bat (avec jgrep.jar):
et ajoutez c: \ jgrep à la fin de la variable d'environnement PATH.
Maintenant, appelez simplement
jgrep "expression" file.txt
de n'importe où.J'avais besoin d'imprimer des groupes spécifiques à partir de mon expression, j'ai donc ajouté un modificateur et l'ai appelé comme
jgrep -printGroup=1 "expression" file.txt
.la source
Je me rends compte que c'est une vieille question, mais je suis tombé sur ce post à la recherche d'une réponse. Et j'en ai trouvé un alors en l'ajoutant ici pour la mémoire collective Internet
Powershell: Module Select-String: Microsoft.PowerShell.Utility
https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/select-string
et un article de blog informatif avec des exemples avancés: «Comment« grep »dans PowerShell» https://antjanus.com/blog/web-development-tutorials/how-to-grep-in-powershell/
Un exemple simple tiré de ce billet de blog: cat package.json | Select-String -Pattern webpack ls ./src/components/ | Select-String -Pattern View
C:> chat post.md | Select-String -Pattern "^ \ w *:"
la source
Utiliser Cygwin ...
il a des versions 32 et 64 bits
et cela fonctionne bien de Windows 2000 (*)
à Windows 10 ou Server 2019
J'utilise Cygwin depuis longtemps ...
et j'ai récemment essayé de le remplacer par Windows-Linux-Subsystems ...
pas pour longtemps ...
je suis rapidement retourné chez Cygwin ...
beaucoup plus flexible, contrôlable et riche ...
aussi moins intrusif ...
ajoutez simplement \ bin au chemin ...
et vous pouvez l'utiliser n'importe quel logiciel sous Windows / Batch / Powershell ...
ou dans une DOS-Box ... ou dans une Powershell-Box ...
Vous pouvez également installer une tonne de packages géniaux
qui fonctionnent vraiment ... comme nginX ou PHP ... J'utilise même le package PHP Cygwin dans mon IIS ...
En prime, vous pouvez également l'utiliser à partir d'un shell bash ...
(je pense que c'était l'intention d'origine ;-))
la source