¿Cuáles son buenas herramientas grep para Windows? [cerrado]

Resuelto asked hace 16 años • 28 respuestas

¿Alguna recomendación sobre herramientas grep para Windows? Idealmente, aquellos que puedan aprovechar el sistema operativo de 64 bits.

Conozco Cygwin , por supuesto, y también encontré PowerGREP , pero me pregunto si hay gemas ocultas por ahí.

 avatar Sep 18 '08 03:09
Aceptado

FINDSTR es bastante potente, admite expresiones regulares y tiene las ventajas de estar ya en todas las máquinas con Windows.

c:\> FindStr /?

Searches for strings in files.

FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:file]
        [/C:string] [/G:file] [/D:dir list] [/A:color attributes] [/OFF[LINE]]
        strings [[drive:][path]filename[ ...]]

  /B         Matches pattern if at the beginning of a line.
  /E         Matches pattern if at the end of a line.
  /L         Uses search strings literally.
  /R         Uses search strings as regular expressions.
  /S         Searches for matching files in the current directory and all
             subdirectories.
  /I         Specifies that the search is not to be case-sensitive.
  /X         Prints lines that match exactly.
  /V         Prints only lines that do not contain a match.
  /N         Prints the line number before each line that matches.
  /M         Prints only the filename if a file contains a match.
  /O         Prints character offset before each matching line.
  /P         Skip files with non-printable characters.
  /OFF[LINE] Do not skip files with offline attribute set.
  /A:attr    Specifies color attribute with two hex digits. See "color /?"
  /F:file    Reads file list from the specified file(/ stands for console).
  /C:string  Uses specified string as a literal search string.
  /G:file    Gets search strings from the specified file(/ stands for console).
  /D:dir     Search a semicolon delimited list of directories
  strings    Text to be searched for.
  [drive:][path]filename
             Specifies a file or files to search.

Use spaces to separate multiple search strings unless the argument is prefixed
with /C.  For example, 'FINDSTR "hello there" x.y' searches for "hello" or
"there" in file x.y.  'FINDSTR /C:"hello there" x.y' searches for
"hello there" in file x.y.

Regular expression quick reference:
  .        Wildcard: any character
  *        Repeat: zero or more occurances of previous character or class
  ^        Line position: beginning of line
  $        Line position: end of line
  [class]  Character class: any one character in set
  [^class] Inverse class: any one character not in set
  [x-y]    Range: any characters within the specified range
  \x       Escape: literal use of metacharacter x
  \<xyz    Word position: beginning of word
  xyz\>    Word position: end of word

Uso de ejemplo: findstr text_to_find *o para buscar recursivamentefindstr /s text_to_find *

Ray Hayes avatar Sep 17 '2008 20:09 Ray Hayes

Según las recomendaciones de los comentarios, comencé a usar grepWin y es fantástico y gratuito .


(Todavía soy fanático de PowerGREP , pero ya no lo uso).

Sé que ya lo mencionaste, pero PowerGREP es increíble .

Algunas de mis funciones favoritas son:

  • Haga clic derecho en una carpeta para ejecutar PowerGREP en ella
  • Utilice expresiones regulares o texto literal
  • Especificar comodines para archivos que se incluirán y excluirán
  • Buscar y reemplazar
  • El modo de vista previa es bueno porque puedes asegurarte de que estás reemplazando lo que deseas.

Ahora me doy cuenta de que las otras herramientas grep pueden hacer todo lo anterior. Es sólo que PowerGREP empaqueta toda la funcionalidad en una GUI muy fácil de usar.

De las mismas personas maravillosas que te trajeron RegexBuddy y con quienes no tengo ninguna afiliación más allá de amar sus cosas. (Cabe señalar que RegexBuddy incluye una versión básica de grep (para Windows) y cuesta mucho menos que PowerGREP).


Soluciones adicionales

Comandos existentes de Windows

  • ENCONTRARSTR
  • Seleccionar cadena en PowerShell

Implementaciones de comandos de Linux en Windows

  • Cygwin
  • Dinero

Herramientas grep con interfaz gráfica

  • AstroGrep
  • desnudogrep
  • GrepWin

Herramientas Grep adicionales

  • dnGrep
 avatar Sep 17 '2008 20:09

GrepWin es gratuito y de código abierto (GPL)

Ingrese la descripción de la imagen aquí

He estado usando grepWin, que fue escrito por uno de los chicos de TortoiseSVN . Hace el trabajo en Windows...

Shannon Matthews avatar Nov 29 '2010 22:11 Shannon Matthews

Actualización de julio de 2013:

Otra herramienta grep que uso todo el tiempo en Windows es AstroGrep :

Genialidad de AstroGrep

Su capacidad para mostrarme algo más que la búsqueda de líneas (es decir, --context=NUM de un grep de línea de comandos) es invaluable.
Y es rápido. Muy rápido, incluso en una computadora vieja sin unidad SSD (lo sé, solían hacer este disco duro con discos giratorios , llamados platos , una locura, ¿verdad?)

Es gratis.
Es portátil (archivo zip simple para descomprimir).


Respuesta original de octubre de 2008.

texto alternativoGnu Grep está bien

Puedes descargarlo, por ejemplo, aquí: ( sitio ftp )

Todas las opciones habituales están aquí.

Eso, combinado con gawk y xargs (incluye 'find', de GnuWin32 ), ¡realmente puedes escribir scripts como si estuvieras en Unix!

Vea también las opciones que estoy usando para grep recursivamente :

grep --include "*.xxx" -nRHI "my Text to grep" *
VonC avatar Sep 17 '2008 20:09 VonC