Excluyendo ciertas extensiones de archivo en la búsqueda de Windows

1

Estoy tratando de buscar una cierta extensión de archivo, .pro. He intentado las siguientes búsquedas en las barras de búsqueda: type:.pro y *.proSin embargo, ambas consultas producen archivos con la extensión. .properties y .project. No quiero esto en mis resultados. ¿Cómo excluyo estos?

tuskiomi
fuente
Si utiliza cmd y dir *.pro /s encontrará los resultados que desea, aunque tal vez no en el formato que podría haber deseado.
AFH
@AFH esta búsqueda aún produce .properties, .providers y .project files.
tuskiomi
Lo siento, tiene razón, y me he dado cuenta de por qué: Windows todavía insiste en proporcionar nombres 8.3 para nombres de archivos largos, incluidos aquellos con extensiones largas. Desafortunadamente, todo el masaje de nombres se realiza en la parte de 8 caracteres y la extensión de 3 caracteres son los primeros 3 caracteres de la extensión larga. En su sabiduria dir coincide con los nombres de archivo largos y cortos, de ahí su resultado. Puedes desactivar nombres 8.3 o puedes usar findstr para filtrar los resultados (como ahora veo que David Postill ha sugerido en su respuesta).
AFH
@LưuVĩnhPhúc - Sus enlaces explican el mecanismo, pero no la razón, especialmente ahora que Windows 10 parece no admitir programas de 16 bits. Hay otra solución: TCC / LE es un reemplazo para cmd, que se amplía para dar poder de scripting a casi Unix, pero más o menos mantiene cmd compatibilidad para scripts existentes; por defecto es dir comando hace no coincide con los nombres 8.3, aunque hay una opción para permitir esto. TCC / LE es gratuito para uso no comercial, y es una versión ligeramente reducida del TCC aún más potente.
AFH

Respuestas:

2

Estoy tratando de buscar una cierta extensión de archivo, .pro

He intentado las siguientes búsquedas en las barras de búsqueda: escriba: .pro y * .pro, sin embargo, ambas consultas generan archivos con la extensión .properties y .project.

Esto no es posible usando la barra de búsqueda del Explorador de Windows, incluso cuando se usa Sintaxis de consulta avanzada .

Sin embargo, se puede lograr en una cmd shell, con el siguiente comando:

dir /b /s | findstr /e /l /c:".pro"

Ejemplo:

> dir /b /s *.pro
F:\test\.pro
F:\test\test.pro
F:\test\test.profile
F:\test\test.properties
F:\test\test.project

> dir /b /s | findstr /e /l /c:".pro"
F:\test\.pro
F:\test\test.pro

Otras lecturas

DavidPostill
fuente