Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @echo off
- REM buscaBusca.bat
- ::
- REM Autor: angeldp
- ::
- :: Sintaxis: buscaBusca.bat ObjetoBuscado
- :: El script buscará ObjetoBuscado en la unidad C: y, en caso de encontrar
- :: coincidencias indicará cuántas y mostrá una lista con las mismas. Si no hay
- :: nada que contenga ObjetoBuscado en su nombre, lo señalará y finalizará.
- ::
- :: Guardo en una variable la ruta al archivo de log.
- set LOGFILE="%USERPROFILE%\resultados de la busqueda.txt"
- cls
- title=Buscador de objetos
- color f0
- echo.
- echo Tildes omitidas intencionadamente.
- echo.
- REM Primero compruebo que se haya pasado como parámetro la cadena a buscar. Si el
- REM parámetro está en blanco muestro la ayuda y finalizo el script
- if "%1" == "" (
- echo.
- echo Sintaxis: %0 ObjetoBuscado
- goto:eof
- )
- :: En el caso de que sí haya un parámetro:
- echo.
- echo Buscando %1 en el directorio raiz...
- :: Me coloco en el ráiz de C:
- cd /d C:\
- :: Hago un listado recursivo de todos los archivos y carpetas que contengan
- :: el parámetro en su nombre (*%1*)
- dir /s /a *%1* 2>nul >nul
- :: Si ese listado ha dado error es que no ha encontrado coincidencias y lo indico
- if ERRORLEVEL 1 (
- echo.
- echo No se ha encontrado nada que incluya %1 en su nombre.
- REM Si no hay error es que encontró algo, así que lo muestro
- ) else (
- echo Numero de resultados obtenidos:
- REM Listado recursivo (/S) de todos (/A) los nombres de archivos y
- REM carpetas sin detalles (/B) que lleven el patrón en su nombre (*%1*)
- REM Redireccionando los errores y buscando C: (lo tienen todos) con la
- REM opción /C para que devuelva el nº de coincidencias en vez de la lista.
- dir /s /a /b *%1* 2> nul | find /c "C:"
- echo.
- echo Pulse cualquier tecla para ver la lista de archivos:
- pause > nul
- REM Uso el dir anterior para ver la lista de archivos añadiendo /p
- REM para que pagine la salida si es muy extensa.
- dir /s /a /p /b *%1*
- )
- :: Tanto si ha encontrado resultados, como si no, actualizo el log
- echo Presione cualquier tecla para salir de %0
- pause > nul
- echo. ........oooooooOOOOOO000000OOOOOOooooooo........ >> %LOGFILE%
- echo. >> %LOGFILE%
- date /t >> %LOGFILE%
- time /t >> %LOGFILE%
- echo. >> %LOGFILE%
- echo Se busco: %1 >> %LOGFILE%
- echo Resultados encontrados: >> %LOGFILE%
- dir /s /a /b *%1* 2> nul | find /c "C:" >> %LOGFILE%
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement