Según el programa gratuito de gizmo, "Reemplazar texto" ecobyte.com/replacetext es otra opción interesante
fluxtendu
Perdón por el necro, pero ¡GRACIAS! ¡Desesperadamente esta herramienta en Windows, y este dnGREP es un regalo del cielo!
pepoluan
3
La mayoría de las versiones de Windows incluyen el comando "findtr" que funciona de manera muy similar a grep. No sé acerca de sus habilidades Unicode, pero que yo sepa no debería haber ningún problema con eso.
UnxUtils es antiguo y no es compatible; se actualizó por última vez en 2003. pruebe GnuWin32 para obtener un conjunto de herramientas más reciente: gnuwin32.sourceforge.net
quack
1
Sí, como menciona fluxtendu,
PowerGREP hará todo eso. Pero es propietario y cuesta 149 euros.
dnGREP también funcionará y tiene una función similar establecida de forma gratuita.
Sin embargo,
Cygwin también puede instalar grep (y mucho más si lo desea). Realizará la búsqueda Unicode con el -Uinterruptor. Recomendaría Cygwin como la solución más simple si está familiarizado con Unix grep. Solo asegúrese de agregar su RUTA y también puede usarla en el shell de Windows.
Básicamente, extrae todos los caracteres Unicode de los archivos, por lo que puede canalizarlos a cualquier grepalike de Windows que use, ya sea findstr(nativo) o como yo, gnuwin32 grep para Windows (hace lo que dice).
Entonces obtienes algo como:
strings *.odf | grep -i "texttosearch"
findstr funciona también para muchas cosas, pero grep es simplemente mejor.
¿Cómo, exactamente, responde esto a la pregunta? El stringsprograma se utiliza para buscar cadenas de texto que se mezclan con datos que no son de texto ("binarios"); por ejemplo, archivos ejecutables. La pregunta no dice nada acerca de tener cadenas de texto incrustadas en datos binarios. ... ... ... ... ... ... ... ... ¿Qué sucede si quiero buscar en un archivo de texto Unicode caracteres como π y ≤? ¿Escribiría strings dissertation | findstr "π"? ¿ findstrManeja Unicode? Si es así, ¿por qué no decir simplemente findstr "π" dissertationqué fue sugerido hace cinco años? Si no es así, ¿qué has ganado?
G-Man dice 'Restablece a Mónica'
buen punto. Supongo que no
entendí
0
Vea BareGrep (la versión gratuita tiene una pantalla de inicio), que parece ser un grep gráfico bastante completo. La documentación menciona la compatibilidad con "Muchos formatos de archivo", por lo que me imagino que se incluye Unicode.
Estoy bastante seguro de que NO es compatible con Unicode. Lo probé y no funciona en archivos UTF-16. Los he enviado por correo electrónico para confirmar.
Respuestas:
Para una herramienta de línea de comandos, mire la respuesta de KeyboardMonkey (pero no estoy seguro acerca del soporte Unicode).
Para una herramienta GUI (de código abierto): dnGREP
Para una herramienta GUI más simple (solo búsqueda): AstroGrep y para una más destacada (y costosa): PowerGREP
fuente
La mayoría de las versiones de Windows incluyen el comando "findtr" que funciona de manera muy similar a grep. No sé acerca de sus habilidades Unicode, pero que yo sepa no debería haber ningún problema con eso.
fuente
Actualización: GnuWin32 es un puerto mantenido más recientemente de estas herramientas. (Gracias Quack)
Aquí hay una lista de los paquetes y para descargar grep individualmente.
Eche un vistazo a UnxUtils , que también incluye grep. También los uso en mi PC de trabajo.
fuente
Sí, como menciona fluxtendu,
Sin embargo,
-U
interruptor. Recomendaría Cygwin como la solución más simple si está familiarizado con Unix grep. Solo asegúrese de agregar su RUTA y también puede usarla en el shell de Windows.fuente
Hice esta pregunta hace un tiempo y finalmente descubrí grepWin, que es una GUI a través del menú contextual del shell. Funciona bastante bien
fuente
La forma más sencilla de hacer esto es una utilidad de Windows llamada "cadenas" que hace exactamente lo que buscas:
Cuerdas (Sysinternals)
Básicamente, extrae todos los caracteres Unicode de los archivos, por lo que puede canalizarlos a cualquier grepalike de Windows que use, ya sea
findstr
(nativo) o como yo, gnuwin32 grep para Windows (hace lo que dice).Entonces obtienes algo como:
findstr
funciona también para muchas cosas, pero grep es simplemente mejor.fuente
strings
programa se utiliza para buscar cadenas de texto que se mezclan con datos que no son de texto ("binarios"); por ejemplo, archivos ejecutables. La pregunta no dice nada acerca de tener cadenas de texto incrustadas en datos binarios. ... ... ... ... ... ... ... ... ¿Qué sucede si quiero buscar en un archivo de texto Unicode caracteres comoπ
y≤
? ¿Escribiríastrings dissertation | findstr "π"
? ¿findstr
Maneja Unicode? Si es así, ¿por qué no decir simplementefindstr "π" dissertation
qué fue sugerido hace cinco años? Si no es así, ¿qué has ganado?Vea BareGrep (la versión gratuita tiene una pantalla de inicio), que parece ser un grep gráfico bastante completo. La documentación menciona la compatibilidad con "Muchos formatos de archivo", por lo que me imagino que se incluye Unicode.
fuente