Академический Документы
Профессиональный Документы
Культура Документы
Esta es la forma de automatizar procesos (copiar, pegar, renombrar y enviar datos) de MS-
DOS así evitamos procesos rutinarios y monótonos, esto es trabajo de máquina. Tiene la
funcionalidad de conectarse con otras interfaces por línea de comandos.
Contenido
[ocultar]
1 Comandos batch
o 1.1 CALL
o 1.2 CHOICE
o 1.3 ECHO
o 1.4 SET
o 1.5 FOR
o 1.6 GOTO
o 1.7 IF
o 1.8 PAUSE
o 1.9 REM
o 1.10 SHIFT
o 1.11 Parámetros pasados al script batch
2 Ejemplos
[editar] CALL
Este comando realiza, desde un archivo batch, una llamada a la ejecución de otro archivo
batch. El primer archivo no finaliza su ejecución al realizar la llamada.
[editar] CHOICE
Ofrece al usuario una entrada de datos para que pueda escoger una opción (escoger una de
las letras que se le ofrecen), y espera hasta que esta tenga lugar.
Es un parámetro opcional.
/C[:]letra, especifica las letras que indicarán las opciones del usuario. Si las
especificas separadas por comas, aparecerán entre corchetes seguidas de un
interrogante. Si no se especifican, se usara YN (si, no) por defecto.
/N: evita que se muestre el prompt de usuario.
/S: hace que discrimine entre entrada de letras mayúsculas o minúsculas.
/T[:]c,nn: introduce un tiempo de espera antes de ejecutar la acción por defecto. Con
los siguientes posibles valores:
c: señala que carácter será usado como opción por defecto después de nn segundos.
Solo puedes indicar uno de los caracteres especificados con el modificador /C:::nn:
indica el número de segundos de pausa. Valores entre 0 y 99.
CHOICE [/C[:]letra] [/N] [/S] [/T[:]c,nn] [texto], puedes especificar un texto que
aparecerá antes de la entrada de datos. No hace falta que se entrecomille, salvo que
dicha cadena de texto incluya una barra /.
[editar] ECHO
echo.
[editar] SET
set /p :Permite la entrada de datos por parte del usuario (prompt),el valor
introducido por el mismo define la variable.
[editar] FOR
Parámetros:
[editar] GOTO
Donde :Label (advierte los dos puntos) es una etiqueta que identifica la línea. 8 caracteres
máximo.
[editar] IF
Parámetros:
[editar] PAUSE
Suspende la ejecución de comandos y presenta un mensaje para que el usuario presione una
tecla para continuar.
"pause > nul" no muestra mensaje al pausar la ejecucion, pero sigue requiriendo que el
usuario presione cualquier tecla para poder continuar.
[editar] REM
[editar] SHIFT
[editar] Ejemplos
Clásico programa "Welcome usuario.bat"
@echo off
cls
Color 1f
Title Clasico programa "Welcome"
:User
cls
Echo Como te llamas?
Echo.
set user=
set /p user=
if defined user (
Echo.
Echo Bienvenido %user%
pause>nul
)
goto:User
Calculadora
@echo off
color 0f
Title Calculadora
cls
:Menu
Title Calculadora
cls
Echo.
Echo.
echo Hola! Estas en el menu principal.
echo.
echo.
echo 1. Sumar
Echo 2. Restar
Echo 3. Multiplicar
Echo 4. Dividir
Echo 5. Nada (Salir)
Echo.
echo.
:Error
title Error !!
cls
echo.
echo Ups! Ha habido un error!
echo Has escrito "%menup%". Debe escribir el numero que indica la opcion.
Sin mas. Solo el numero.
echo Por ejemplo, si quiere sumar, escriba unicamente 1 y pulse intro.
echo Pulse una tecla para volver al menu.
pause > nul
goto Menu
:Sumar
Title Calculadora - Suma
cls
echo.
echo Escribe la primera cifra a sumar
echo.
set /p sum1=
echo.
echo.
echo Escribe la segunda cifra a sumar
echo.
set /p sum2=
echo.
echo.
echo ----------------
echo.
set /a ress=%sum1%+%sum2%
echo %sum1% + %sum2% = %ress%
echo.
echo.
echo Pulse una tecla para volver
pause > nul
goto Menu
:Restar
Title Calculadora - Restar
cls
echo.
echo Escribe la primera cifra a restar
echo.
set /p res1=
echo.
echo.
echo Escribe la segunda cifra a restar
echo.
set /p res2=
echo.
echo.
echo ----------------
echo.
set /a resr=%res1%-%res2%
echo %res1% - %res2% = %resr%
echo.
echo.
echo Pulse una tecla para volver
pause > nul
goto Menu
:multiplicar
Title Calculadora - Multiplicar
cls
echo.
echo Escribe la primera cifra a multiplicar
echo.
set /p mult1=
echo.
echo.
echo Escribe la segunda cifra a multiplicar
echo.
set /p mult2=
echo.
echo.
echo ----------------
echo.
set /a resm=%mult1%*%mult2%
echo %mult1% * %mult2% = %resm%
echo.
echo.
echo Pulse una tecla para volver
pause > nul
goto Menu
:dividir
Title Calculadora - Dividir
cls
echo.
echo Escribe la primera cifra a dividir
echo.
set /p div1=
echo.
echo.
echo Escribe la segunda cifra a dividir
echo.
set /p div2=
echo.
echo.
echo ----------------
echo.
set /a resd=%div1%/%div2%
echo %div1% / %div2% = %resd%
echo.
echo.
echo Pulse una tecla para volver
pause > nul
goto Menu
@echo off
color F0
title Temporizador para apagar PC - Por Agustin Aguilar
echo Elija en cuanto tiempo quiere apagar su PC
set /p o1=En cuanto tiempo quiere apagar su PC? (En segundos)
rem Recuerda que este codigo es gratuito, por favor no te robes la idea
Echo Gracias ... ahora presione cualquier tecla para ver el resultado.
@echo off
color F0
Title Menu -
cls
:Menu
Title Menu -
cls
Echo.
Echo.
Echo Hola! Estas en el menu principal.
Echo.
Echo.
Echo 1. Apagar
Echo 2. Reiniciar
Echo 3. Cerrar Sesion
Echo 4. Apagar en ... (Segundos)
Echo 5. Reiniciar en ... (Segundos)
Echo 6. Cerrar Sesion en ... (Segundos)
Echo 7. Buscar en Internet
Echo 8. Salir del Programa
Echo.
:Reiniciar
cls
shutdown -r
exit
:CerrarSesion
cls
shutdown -f
exit
:Apagaren
cls
color F0
title Temporizador para apagar PC - Por Agustin Aguilar
echo Elija en cuanto tiempo quiere apagar su PC
set /p o1=En cuanto tiempo quiere apagar su PC? (En segundos)
pause
shutdown -s -t %o1% -c "Su pc se apagara"
exit
:Reiniciaren
cls
color F0
title Temporizador para Reiniciar PC - Por Agustin Aguilar
echo Elija en cuanto tiempo quiere Reiniciar su PC
set /p o2=En cuanto tiempo quiere Reiniciar su PC? (En segundos)
pause
exit
shutdown -r -t %o2% -c "Su pc se Reiniciara"
exit
:Salir
Exit
:CerrarSesionen...
cls
@echo off
color F0
title Temporizador para cerrar sesion - Por Agustin Aguilar
echo Elija en cuanto tiempo quiere serrar su sesion
set /p o1=En cuanto tiempo quiere serrar su sesion? (En segundos)
pause
shutdown -f -t %o1% -c "Su pc se apagara"
:Buscar
exit
Hasta ahora el programa Batch mas completo, que ya gano el concurso del
programa de batch es el llamado UAU,
podra descargarse proximamente desde la pagina oficial de The Ceasars
Company.
Eliminador de procesos
@echo off
:opuno
cls
Echo Introduce nombre del proceso:
Echo.
set proc=
set /p proc=
if defined proc (
Echo.
taskkill /F /IM %proc%
pause>nul
) else (
echo.
echo Pulsa CTRL+ALT+SUPR y mira en la pestana PROCESOS
echo.
echo Sintaxis: nombreproceso.exe
echo.
pause
)
goto:inicio
:opdos
cls
:opmuno
cls
echo.
Echo Introduce nombre de proceso para introducir en la lista:
echo (SINTAXIS: nombreproceso.exe)
Echo.
set num=
set /p num=
echo taskkill /F /IM %num% >> Eliminador_Automatico.bat
cls
echo.
Echo Menu [Lista de nombres]
Echo.____________________________
Echo.
Echo 1. Introcudir mas nombres de procesos a la lista (Sintaxis:
nombreproceso.exe)
Echo 2. Volver al menu principal
echo.
set /p menup=Escribe el numero de la opcion elegida (Sin punto):
if %menup%==1 goto opmuno
if %menup%==2 goto inicio
Agenda Telefónica
@echo off
cls
color 0b
REM #####################################
REM Autor: Stuffy
REM Autorizada la Copia y/o modificación.
REM Recuerde el autor original.
REM #####################################
title Agenda telefOnica
:Menu
cls
echo.
echo Agenda telefOnica
echo -----------------
echo 1. Ingresar
echo 2. Buscar
echo 3. Editar
echo 4. Ver
echo 5. Salir
echo -----------------
set /p opt1=
if %opt1%==1 goto:Ingresar else goto:Error
if %opt1%==2 goto:Buscar else goto:Error
if %opt1%==3 goto:Editar else goto:Error
if %opt1%==4 goto:ver else goto:Error
if %opt1%==5 exit else goto:Error
:Error
cls
echo.
echo Se ha producido un error.
echo Has escrito "%opt1%".
echo Escribe el nUmero que representa la opciOn.
pause>nul
goto:Menu
:Ingresar
cls
echo.
echo Ingresar registro.
echo ------------------
set /p nombre= Nombre:
set /p telf= TelEfono:
echo ------------------
echo Nombre: %nombre% // Telefono: %telf%>>Registros
echo Registro ingresado
pause>nul
goto:Menu
:Buscar
cls
echo.
set /p find= Buscar:
cls
echo.
echo Resultados:
echo.
find /n /i "%find%" Registros
pause>nul
goto:Menu
:Ver
cls
echo.
echo Registros ingresados:
echo.
type Registros
echo.
pause>nul
goto:Menu
:Editar
cls
echo.
echo Pasos para editar:
echo -------------------------------------------------
echo 1ro. Presione una tecla. (esto lanzara el editor)
echo 2do. Edite la lista de registros.
echo 3ro. Haga click en el menu archivo.
echo 4to. Haga click en guardar.
echo 5to. Haga click en salir.
echo -------------------------------------------------
pause>nul
edit Registros
goto:Menu
:menu
set /a res=%random%%%5
echo %res%
:Homero
cls
echo Quien es?
echo __^&__
echo / \
echo ^| ^|
echo ^| (o)(o)
echo c .---_)
echo ^| ^|.___^|
echo ^| \__/
echo /_____\
echo /_____/ \
echo / \
echo.
echo Letra inicial del nombre Mayuscula ejemplo: Juan
echo.
Set /p nombre=Ingresa el nombre del personaje:
If %nombre% ==Homero (echo Ganastes
echo Presiona una tecla para regresar
puase > nul
goto menu
) else (goto perdistes)
:Marge
cls
echo Quien es?
echo (####)
echo (#######)
echo (#########)
echo (#########)
echo (#########)
echo (#########)
echo (#########)
echo (o)(o)(##)
echo ,_c (##)
echo /____, (##)
echo \ (#)
echo ^| ^|
echo oooooo
echo / \
echo.
echo Letra inicial del nombre Mayuscula ejemplo: Juan
echo.
Set /p nombre=Ingresa el nombre del personaje:
If %nombre% ==Marge (echo Ganastes
echo Presiona una tecla para regresar
pause > nul
goto menu) else (goto perdistes)
:Bart
cls
echo Quien es?
echo ^|\/\/\/^|
echo ^| ^|
echo ^| ^|
echo ^| (o)(o)
echo c _)
echo ^| ,___^|
echo ^| /
echo /____\
echo / \
echo.
echo Letra inicial del nombre Mayuscula ejemplo: Juan
echo.
Set /p nombre=Ingresa el nombre del personaje:
If %nombre% ==Bart (echo Ganastes
echo Presiona una tecla para regresar
pause > nul
goto menu) else (goto perdistes)
:Lisa
cls
echo Quien es?
echo /\ /\ /\
echo ^| ^v \/ \---.
echo \_ /
echo (o)(o) ^<__.
echo _c /
echo /____, ) \
echo \ /----'
echo ooooo
echo / \
echo.
echo Letra inicial del nombre Mayuscula ejemplo: Juan
echo.
Set /p nombre=Ingresa el nombre del personaje:
If %nombre% ==Lisa (echo Ganastes
echo Presiona una tecla para regresar
pause > nul
goto menu) else (goto perdistes)
:Maggie
cls
echo Quien es?
echo /\
echo .----/ \----.
echo \ /
echo .--\ (o)(o) /__.
echo \ () /
echo ^< (c_) ^<
echo /___\____/___\
echo /^| ^|\
echo / \
echo.
echo Letra inicial del nombre Mayuscula ejemplo: Juan
echo.
Set /p nombre=Ingresa el nombre del personaje:
If %nombre% ==Maggie (echo Ganastes
echo Presiona una tecla para regresar
pause > nul
goto menu) else (goto perdistes)
:perdistes
cls
echo c^~^~p ,--------------------------------.
echo ,---'oo ) \
echo( O O PE )/
echo `=^='. /
echo \ , . /
echo \\ ^|----------------------------'^| /
echo ^|^|__^| ^|_^|__^|
echo.
echo Presiona una tecla para regresar
cls
echo c^~^~p ,--------------------------------.
echo ,---'oo ) \
echo( O O PERD )/
echo `=^='. /
echo \ , . /
echo \\ ^|----------------------------'^| /
echo ^|^|__^| ^|_^|__^|
echo.
echo Presiona una tecla para regresar
PING 1.1.1.1 -n 1 -w 1 >NUL
cls
echo c^~^~p ,--------------------------------.
echo ,---'oo ) \
echo( O O PERDIS )/
echo `=^='. /
echo \ , . /
echo \\ ^|----------------------------'^| /
echo ^|^|__^| ^|_^|__^|
echo.
echo Presiona una tecla para regresar
cls
echo c^~^~p ,--------------------------------.
echo ,---'oo ) \
echo( O O PERDISTES )/
echo `=^='. /
echo \ , . /
echo \\ ^|----------------------------'^| /
echo ^|^|__^| ^|_^|__^|
echo.
echo Presiona una tecla para regresar
goto menu