usar mdfind para obtener una lista de coincidencias con el contexto?

1

Quiero buscar en una carpeta de archivos PDF para encontrar una cadena en particular y recuperar una lista de coincidencias con un poco del contexto circundante.

Utilizando:

mdfind -onlyin ~/Dropbox/PDFs 'term' >> ~/Dropbox/searches/term.txt

Puedo obtener una lista de archivos que contienen una coincidencia, pero me gustaría ver un poco del contexto circundante para poder contar un poco más sobre la coincidencia. Idealmente, con el nombre de archivo precedido.

Algo como:

~/Dropbox/PDFs/file1.pdf: here is the term you were searching
~/Dropbox/PDFs/file1.pdf: with term limits
~/Dropbox/PDFs/file2.pdf: the German term for a 
~/Dropbox/PDFs/file3.pdf: come up with a term for
etc...
    
pregunta Patrick Wynne 29.07.2018 - 21:45

1 respuesta

2

mdfind solo devolverá los nombres de archivo, no muestra ningún contenido, ni tiene la capacidad de hacerlo mirando su página de manual.

Entonces, en lugar de usar mdutil , sugeriría usar un pdfgrep en su lugar. Esta herramienta está disponible a través de brew :

$ brew install pdfgrep

Una vez instalado, funciona así:

$ pwd
/Users/user1/pdf

$ pdfgrep website -r
./docs/misc/Web-Shells-rev2.pdf:Say I run into the following website:
./docs/misc/Web-Shells-rev2.pdf:home directory of a website for shared host web servers:
./docs/misc/Web-Shells-rev2.pdf:Many websites with upload capabilities still rely on client side validation (javascript). These are
./docs/misc/Web-Shells-rev2.pdf:reverse shell I've hosted the file on one of my websites. Just remember to rename the extension
./docs/misc/Web-Shells-rev2.pdf:the output file, we could overwrite IIS log files or even deface websites. Elements the user can

pdfgrep tiene el complemento normal de los interruptores para hacer -r recursivo, así como ignorar el caso -i , o incluso hacer búsquedas de expresiones regulares.

    
respondido por el slm 30.07.2018 - 07:06

Lea otras preguntas en las etiquetas