Grep en Microsoft Word?

10

Grep en Microsoft Word?

Me gustaría extraer todas las líneas con una cadena dada de un documento de Word. En el mundo de Unix ... grep hace esto sin fallas. Windows es menos que obvio para mí.

fretje
fuente

Respuestas:

10

Con Cygwin (o acceso a una máquina Linux) podría

antiword file.doc | grep "my phrase"

o

catdoc file.doc | grep "my phrase"

Hay muchos convertidores de formato de archivo de línea de comandos para grep de manera similar.

La solución puramente en Word podría ser Ctrl + F (Buscar) y luego Buscar todo ; sin embargo, no estoy seguro de si todas las versiones de MS Word tienen el botón Buscar todo .

cronos
fuente
2
Cuando vi el título de la pregunta pensé "¡Ja! Eso sería bueno, ¿no?". Nunca más debería subestimar a los programadores de GNU.
Phoshi el
La versión más reciente de catdocviolaciones de segmento en cada .doc/ .docxarchivo se lo doy, y antiwordsimplemente me dice mi documento "no es un documento de Word". ¿Conoces alguna otra opción?
detly
Nada de lo que he usado ... La búsqueda rápida muestra que docx2txtexiste en los repositorios de Debian, podría funcionar. También buscaría en la utilidad de conversión de formato de línea de comandos OpenOffice / LibreOffice (unoconv), que podría usarse para el mismo propósito.
cronos
3

Sé que esto suena primitivo, pero lo que te impide guardar el archivo como .txt y luego romperlo a tu gusto.

Torre
fuente
2
Tener cientos de ellos para hacerlo, es lo que.
tchrist
1

¿Qué significa "línea" en un contexto de Word? La línea que se muestra, ¿qué cambia si le haces algo al formato de página? ¿El párrafo? ¿Algo más?

Puede hacer un montón de cosas con las funciones de buscar y reemplazar de Word, incluido el cambio de formato y otras cosas no obvias, pero todas ellas solo actuarán en el texto de buscar qué, no en el texto circundante.

Marta
fuente
¡grep tiene ese amor regex!
Phoshi el
1

Hay soporte para documentos MS - Word, PowerPoint, Excel - en CRGREP que he desarrollado como una herramienta gratuita de código abierto. También engloba otras cosas difíciles de buscar, como tablas de bases de datos, imágenes, audio, archivos, PDF y combinaciones de estos. Que te diviertas.

Craig
fuente
0

PowerGREP hará exactamente eso por usted y rápido, pero no de forma gratuita. Sin embargo, vale la pena cada centavo, en mi opinión. Además, hay una prueba gratuita de 30 días.

Captura de pantalla de PowerGREP buscando en un archivo de Word

Tim Pietzcker
fuente
0

No tengo suficiente representante para comentar, pero puedo ver este tema de doc vs docx discutido, por lo que cualquiera que persiga el hilo (como yo) puede encontrar esto útil.

No necesita una herramienta especial para archivos docx. docx son archivos XML comprimidos.

Para extraer y eliminar el XML intente algo basado en

unzip -p "*.docx" word/document.xml | sed -e 's/<[^>]\{1,\}>//g; s/[^[:print:]]\{1,\}//g'

desde la línea de comando fu

Fafhrd
fuente