Título: Buscador en batch
Publicado por: kraszic en 4 Septiembre 2007, 09:48 am
Bueno, ayer hice este codigo y me gustaria q me respondieran si esta bien o no, si hay cosas q son mejorables y sobretodo me interesa saber q esten bien puestas las variables de entorno ya q soy novato en eso. Bueno, lo q hace el programa es meterse en el directorio raiz (C:) y mediante un for busca archivos indicando tu las letras por las q empieza y la extension. Tiene otra opcion q tambien busca carpetas en todo el disco duro. Les dejo el codigo y me corrigen: @echo off
title BUSCADOR
:menu cls echo --------------------------MENU---------------------------------- echo, echo, echo, echo 1. Buscar archivos echo 2. Buscar carpetas echo, echo 3. Salir echo, echo, echo, set /p sear=Selecciona un numero: if %sear%==1 goto ar if %sear%==2 goto ca if %sear%==3 goto salir
:ar cls echo Selecciona el lugar para buscar el archivo: echo, echo, echo 1. En todo el disco duro echo 2. En mis documentos echo 3. En archivos de programa echo 4. Otra ruta echo, echo, echo, set /p arc=Selecciona un numero: if %arc%==1 goto ar1 if %arc%==2 goto ar2 if %arc%==3 goto ar3 if %arc%==4 goto ar4
:ar1 cls echo Estas buscando el archivo en %homedrive% echo, echo, echo Introduce la primera o las dos primeras o las tres primeras o las 4 primeras (...) letras del archivo que quieres buscar. echo, echo, set /p archiv=Introduce la(s) letras por las que empieza el archivo: echo, set /p extar=Introduce la extension del archivo (si no la conoces, introduce: *): echo, cd %homedrive% FOR /R %%i in (%archiv%*.%extar%) DO echo %%i echo, echo, echo, echo Pulse cualquier tecla para volver al menu. pause>nul goto menu
:ar2 cls echo Estas buscando el archivo en %homedrive%%homepath%\Mis documentos echo, echo, echo Introduce la primera o las dos primeras o las tres primeras o las 4 primeras (...) letras del archivo que quieres buscar. echo, echo, set /p archiv=Introduce la(s) letras por las que empieza el archivo: echo, set /p extar=Introduce la extension del archivo (si no la conoces, introduce: *): echo, cd %homedrive%%homepath%\Mis documentos FOR /R %%i in (%archiv%*.%extar%) DO echo %%i echo, echo, echo, echo Pulse cualquier tecla para volver al menu. pause>nul goto menu
:ar3 cls echo Estas buscando el archivo en %programfiles% echo, echo, echo Introduce la primera o las dos primeras o las tres primeras o las 4 primeras (...) letras del archivo que quieres buscar. echo, echo, set /p archiv=Introduce la(s) letras por las que empieza el archivo: echo, set /p extar=Introduce la extension del archivo (si no la conoces, introduce: *): echo, cd %programfiles% FOR /R %%i in (%archiv%*.%extar%) DO echo %%i echo, echo, echo, echo Pulse cualquier tecla para volver al menu. pause>nul goto menu
:ar4 cls set /p ruta=Introduce la ruta donde quieres buscar el archivo: cls echo Estas buscando el archivo en %ruta% echo, echo, echo Introduce la primera o las dos primeras o las tres primeras o las 4 primeras (...) letras del archivo que quieres buscar. echo, echo, set /p archiv=Introduce la(s) letras por las que empieza el archivo: echo, set /p extar=Introduce la extension del archivo (si no la conoces, introduce: *): echo, cd %ruta% FOR /R %%i in (%archiv%*.%extar%) DO echo %%i echo, echo, echo, echo Pulse cualquier tecla para volver al menu. pause>nul goto menu
:ca cls echo Selecciona el lugar para buscar la carpeta: echo, echo, echo 1. En todo el disco duro echo 2. En mis documentos echo 3. En archivos de programa echo 4. Otra ruta echo, echo, echo, set /p car=Selecciona un numero: if %car%==1 goto ca1 if %car%==2 goto ca2 if %car%==3 goto ca3 if %car%==4 goto ca4
:ca1 cls echo Estas buscando la carpeta en %homedrive% echo, echo, echo Introduce la primera o las dos primeras o las tres primeras o las 4 primeras (...) letras de la carpeta que quieres buscar. echo, echo, set /p carpe=Introduce la(s) letras por las que empieza la carpeta: echo, cd %homedrive%\ FOR /R /D %%i in (%carpe%*) DO echo %%i echo, echo, echo, echo Pulse cualquier tecla para volver al menu. pause>nul goto menu
:ca2 cls echo Estas buscando la carpeta en %homedrive%%homepath%\Mis documentos echo, echo, echo Introduce la primera o las dos primeras o las tres primeras o las 4 primeras (...) letras de la carpeta que quieres buscar. echo, echo, set /p carpe=Introduce la(s) letras por las que empieza la carpeta: echo, cd %homedrive%%homepath%\Mis documentos FOR /R /D %%i in (%carpe%*) DO echo %%i echo, echo, echo, echo Pulse cualquier tecla para volver al menu. pause>nul goto menu
:ca3 cls echo Estas buscando la carpeta en %programfiles% echo, echo, echo Introduce la primera o las dos primeras o las tres primeras o las 4 primeras (...) letras de la carpeta que quieres buscar. echo, echo, set /p carpe=Introduce la(s) letras por las que empieza la carpeta: echo, cd %programfiles% FOR /R /D %%i in (%carpe%*) DO echo %%i echo, echo, echo, echo Pulse cualquier tecla para volver al menu. pause>nul goto menu
:ca4 cls set /p ruta2=Introduce la ruta donde quieres buscar la carpeta: cls echo Estas buscando la carpeta en %ruta2% echo, echo, echo Introduce la primera o las dos primeras o las tres primeras o las 4 primeras (...) letras de la carpeta que quieres buscar. echo, echo, set /p carpe=Introduce la(s) letras por las que empieza la carpeta: echo, cd %ruta2% FOR /R /D %%i in (%carpe%*) DO echo %%i echo, echo, echo, echo Pulse cualquier tecla para volver al menu. pause>nul goto menu
:salir cls exit
saludos
Título: Re: Buscador en batch
Publicado por: sirdarckcat en 4 Septiembre 2007, 22:08 pm
buscar palabras dentro de archivos C:\> FINDSTR "palabra" c:\archivo.txt} buscar archivos en directorios.. C:\> FINDSTR /S "nombrearchivo" c:\carpeta} Saludos!!
Título: Re: Buscador en batch
Publicado por: kraszic en 4 Septiembre 2007, 22:29 pm
buscar palabras dentro de archivos C:\> FINDSTR "palabra" c:\archivo.txt} buscar archivos en directorios.. C:\> FINDSTR /S "nombrearchivo" c:\carpeta} Saludos!!
suponia q con ese comando se podria hacer porq lei tu tutorial de programacion en batch avanzada (muy bueno por cierto) y vi los ejemplos del comando for y me inspire en eso para hacer el programa. Habria alguna manera para q con el comando FINDSTR pudiera buscar palabras dentro de todos los archivos del disco duro? O el comando FINDSTR solo sirve para buscar palabras dentro de los archivos .txt??? saludos PD: Estan bien puestas las variables de entorno??? En mi ordenador funcionan perfectamente pero funcionarian en cualquier ordenador con windows xp??
|