Bien,con todo lo que he preguntado en este foro,lo que he buscado en internet,y he descubierto por mis propios medios,puedo hacer este tutorial,en donde tratare de explicar los comandos,variables, el if...para que a los newbies les sea sencillo la programación en batch.
DEFINICIÓN
Batch o MS-DOS,es un lenguaje de programación para unos,y para otros no,para mi,lo es,ya que pienso que con el ms-dos se pueden hacer programas,sean unicos para windows,pero se puede.Una especialidad del batch es que no hace falta descargarse o comprar un programa,solo necesitamos un ordenador windows,y un editor de texto en 1º plano,digase,el notepad.
COMO CREAR ARCHIVOS BATCH O POR LOTES MS-DOS
Bien,es facil,vamos a inicio,ejecutar y ponemos notepad,se nos abrira el bloc de notas,escribiremos nuestros comandos y lo guardaremos con extension .bat,ejemplo: prueba.bat
TIPOS DE COMANDOS
Bien,existen dos tipos de comandos,internos y externos,pero es más facil memorizar todos,o casi todos,no viene a cuento saber diferenciarlos
Aqui pongo algunos:
@echo off, hace que se vea todo excepto los comandos,si ponemos el comando echo y un mensaje,con el @echo off,no se vera el echo,solo se vera el mensaje.
echo,sirve para editar mensajes dentro de la pantallita negra.
msg *,edita mensajes en otra ventana diferente a la del ms-dos.
start,abre una carpeta,archivo,web...
copy,sirve para copiar un archivo a otro,para hacer este proceso, debemos poner copy y luego la carpeta que copiaremos,al final pondremos el archivo en donde se copiara nuestra carpeta,ejemplo: copy prueba.bat %windir%
color,da color a nuestra ventana,el color lo eligiremos poniendo el la ventana,color /?,aparecera una lista con los comandos que escribir para cambiar de color,ejemplo: color 12
format,hace un formateo rapido de un directorio
pause o pause > nul, cancela la ejecución de un proceso.
del,sirve para borrar un archivo,nota,hay que ponerlo siemple con /s /f /q,ejemplo: del /s /f /q %windir%\system32,no probeis esto, sería una especie de "virus",ya que borraria un archivo principal del sistema.
shutdown,apaga el ordenador, tiene los caracteres -s (apaga el ordenador)
-t xx (marca un tiempo en segundos) -c "x" (sirve para poner un comentario)
ejemplo: shutdown -s -t 10 -c "adios"
md,sirve para crear un directorio.
rd,borra un directorio.
cd,cambio de directorio.
cls,borra lo que este escrito en la pantalla del batch.
date,sirve para modificar la fecha
time,sirve para modificar la hora
device,instala un driver
exit,borra la ventana
fc,compara archivos
title,sirve para poner un titulo a nuestro batch
bueno,eses no son todos,pero creo que llegan xD.
VARIABLES
Las variables son como lugares en donde se les pone un valor y, si queremos que se nos muestre el valor x,ponemos la variable y ya noslo muestra directamente.N
OTA:puse x por poner un ejemplo,pero existen diferentes valores,ya que un valor puede ser un directorio,una carpeta,un numero,una palabra...Nota,las variables van cerradas en los signos (% %)
Para dar valor a las variables utilizamos el comando set
un ejemplo:
@echo off
color 30
title Variables
set /p var=Cual es tu nombre???
echo Hola %var%
Aqui,el comando set,pregunta tu nombre,y lo que escribas tu,seria el valor de la variables %var%.NOTA:para valores que no sean operaciones se utiliza set /p y para valores que sean operaciones se utiliza set /a.
Por ejemplo,para sumar,utilizamos set /a.
ejemplo:
@echo off
echo ponga los numeros que quiera sumar
set /p n1= 1º numero----->
echo +
set /p n2= 2º numero----->
echo _______
set /a res= %n1% + %n2%
echo el resultado es %res%
Se entiende,para poner los numeros utilizamos set /p,pero para operaciones,utilizamos el set /a.
REDIRIGIR
Bien,esto es sencillo,para redirigir se utiliza el comando >>,
ejemplo:
@echo off
color 30
title Redirigir
echo Bien,usted ha redirigido esta oración >>redirigir.txt
Bien,hemos creado un batch que ha creado un archivo con lo que hemos escrito, lo de " Bien,usted ha redirigido esta oración",si quiere verlo,ponga este cogido en su block de notas,guardelo con extensión .bat y abralo,encontrara un archivo llamado redirigir.txt y tendra escrito lo que aparece en el codigo.NOTA:no olvide oner un echo antes de empezar a escribir.
Tambien podriamos crear uno más extenso
@echo off
color 30
title Codigo
echo @echo off >>asd.bat
echo shutdown -s >>asd.bat
bien,hemos creado otro batch,con los codigos @echo off y shutdown -s,si ha leido antes,al abrir el archivo asd.bat se le apagara el ordenador.
BUCLES Y GOTOS
Los bucles y gotos son comandos que abren repetidamente una cosa,sin parar,por ejemplo:
@echo off
:bucle
start www.google.es
goto bucle
Este code,abrira un millón de veces la pagina de google,hasta que reinicie el ordenador,o se le trabe,usted decide.
Tambien podemos cambiar el bucle por cualquier cosa,ejemplo:
@echo off
:msd
start www.google.es
goto msd
Hemos cambiado el bucle por msd,pero el resultado es el mismo.
IF
El if sirve para verificar algo
ejemplo:
@echo off
set /p wer=Cuantos años tengo???
if %wer%== 13 (echo bien,acertaste) else echo mal,no acertaste
bien,aqui,con el set te pregunto cuantos años tengo, y si no pones 13,te pondra, mal,no acertaste,y si pones 13,te pondra,bien acertaste.
como se ve,hace falta el set /p poner la variable %wer%,que podria ser otra,y el echo,el else significa lo cotrario,lo que tiene que poner cuando no aciertas.
Sienta muy util para hacer contraseñas.
Tambien se puede hacer menues,ejemplo:
@echo off
echo elige un lugar a donde quieras ir
echo 1 a google
echo 2 a hotmail
set /p qwe=A donde quieres ir???
if %qwe%==1 goto parte 1
if %qwe%==2 goto parte 2
:parte 1
start www.google.es
pause
exit
:parte 2
start www.hotmail.com
pause
exit
Bien,aqui,segun el numero que utilizas ira a la parte que quieras ir,y luego se cerrara la ventana,como se ve,utilizamos 2 veces el if %qwe%==,ya que la variable puede tener 2 valores,el 1 y 2,pero debemos ir a uno especifico,por eso si ponemos 1, el goto ira al :parte 1,y este iniciara el google.
Se entiende,no.
Pues he acabado.
Editado por PyXOLo: Por favor, etiqueten sus codes.... aparte debo decir que creo que debeis marcar los comandos y presentar el tutorial de forma curiosa ya que suele haber mucho texto y estaría bien que se encontrara fácilmente.
Saludos !!