You are on page 1of 8

Manual batch nivel medio-avanzado by TheHackerxD

Bien,hoy vamos a aprender a saber programaren archivos por lotes,o en el Batch (MS-DOS) QUE ES BATCH??? Batch es un lenguaje de programacion unico de windows,es muy facil de aprender,ya que si leen este manual,tendran un nivel entre medio y avanzado de este lenguaje QUE NECESITAMOS PARA PROGRAMAR EN EL MS-DOS ??? Lo unico que necesitamos es un ordenador windows (preferible el windows xp), el notepad y saber programar COMANDOS Los comandos de batch son muchisimos,aqui vienen los ms utilizados : @echo off ,Sirve para que no se vean las lineas de la ruta de tu cuenta que aparecen en el MS-DOS echo ,Sirve para editar mensajes dentro de la ventana negra color,sirve para poner color a la pantalla title,Sirve para poner titulo a nuestro programa cls,sirve para limpar lo que aparece en la ventana msg * Sirve para editar mensajes fuera de la pantalla negra del,Sirve para borrar archivos,viene con los parametros /f /q, y al borrar una carpeta,hay que utilizar el comodin \*.* Ej: del /f /q %windir%\system32\*.* rd,sirve para borrar carpetas vacias, sus parametros son /s /q copy,sirve para copiar archivos,tiene el parametro /Y,al copiar un archivo a otro sitio,se utilizan las comillas ej: copy /Y "carpeta" "C:\temp" at,sirve para programar una tarea a una hora,ej : at 12:00 start www.google.es start,abre un archivo o carpeta

call,llama a otro programa por lotes dir,muestra una lista de archivos y directorios con sus subdirectorios de una ruta ping,sirve para para hacer comprobar cuando tiempo tarda en ir unos paquetes a una ip y volver se suele utilizar el ping a localhost para hacer que un archivo esta cargando ej: ping -n 2 localhost > nul pause,sirve para hacer una pausa,tambien puede utilizarse el pause > nul >>,Sirve para redirigir un archivo a otro,ej: echo ffsg>>tiy.txt,aqui redirigimos un texto a un archivo en txt,en otras palabras,se crea un archivo con el text ffgs y titulo tiy.txt format,Sirve para formatear una unidad,tiene el parametro /q ejemplo: format E: /q If,Sirve para crear menues,verificar archivos,crear contraseas... Fc,compara dos archivos entre ellos y muestra sus diferencias,parametro mas utilizado es el /b Rem o rename,renombra un archivo date,cambia la fecha For,acorta lineas de comandos Type, muestra un texto en pantalla Find,busca lineas de comandos, sus parametros, /v /c /n /i. ej: find /v /c /n /i "del" "%windir%" md, crea una carpeta move,mueve un archivo a una ruta,su parametro es /Y ej: move /Y "asd" "%homedrive% Reg add, aade al registro. Reg delete,borra del registro Reg copy,copia al registro Taskill o tskill,elimina procesos,sus parametros son /f y /im ej: tskill /f /im "iexplorer.exe"

Attrib,cambia los atributos a un archivo,sus parametros son +(aade un atributo) -(borra un atributo) h (atributo para poner en modo oculto) r (atributo de lectura) s (atributo del sistema) a (atributo de almacenamiento) Set, da valor a variables,sus parametros son /p (para letras) /a (para cuentas) Chkdsk,sirve para hacer una revision de las carpetas de tu ordenador Bueno,estos son todos de los que me acuerdo ahora 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.NOTA: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 oracin >>redirigir.txt

Bien,hemos creado un batch que ha creado un archivo con lo que hemos escrito, lo de " Bien,usted ha redirigido esta oracin",si quiere verlo,ponga este cogido en su block de notas,guardelo con extensin .bat y abralo,encontrara un archivo llamado redirigir.txt y tendra escrito lo que aparece en el codigo.NOTA:no olvide poner un echo antes de empezar a escribir. Tambien podriamos crear uno ms 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 milln 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 aos tengo??? if %wer%== 13 (echo bien,acertaste) else echo mal,no acertaste

bien,aqui,con el set te pregunto cuantos aos 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 contraseas. 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. Y para verificar si existe una carpeta: @echo off if exist "C:\Archivos comunes\BitTorrent" goto Si else goto No :Si cls start C:\Archivos comunes\BitTorrent" :No cls exit Aqui,verifica si existe el archivo BitTorrent y si existe va a la etiqueta Si y si no va a la etiqueta No FOR Definicin del comando for: "Ejecuta el comando para cada uno de los archivos especificados en el conjunto de archivos." Sintaxis del comando (FOR) : Cdigo: FOR %%var IN (conjunto) DO (acciones) La sintaxis es algo compleja pero muy eficaz.Analicmosla: %%var=nombre de la variable...sie mpre tiene que estar precedido de dos %% 'porcentajes' (ejemplo: %%3 %%num) IN=Incluye al conjunto (conjunto)=archivos o dgitos con los que queremos trabajar DO=ejecuta las (acciones) (acciones)=Un comando con el ke keremos ejecutar todo el conjunto.El comando puede llevar sus variantes (ejemplo: ...DO (echo %%var, ...DO del /f /q % %var...) Ejemplo: Cdigo: FOR %%x IN (archivo1.txt archivo2.exe archivo3.ini) DO del /f /q %%a Lo que haramos en esta lnea sera lo siguiente

En el conjunto cogemos a archivo1.txt, a archivo2.exey a archivo3.ini. Para llamar al conjunto entero usaremos la variable %%a. Luego con el comando del /f /q (%%a) borramos cada parte del conjunto que contiene la variable%%a

Cdigo: FOR %%var IN (d*) DO echo %%var Lo que hacemos con el for es que nos muestre todos los archivos que comiencen por la letra "d" en el directorio predeterminado o el especificado por cd\push o popd

El modificador /L : Cdigo: For /L %%x in (1,3,30) Do echo %%x

El conjunto es una sucesin de nmeros que va desde inicio hasta fin y que aumenta (o disminuye) en funcin de lo especificado en el paso. As (0, 2, 10) generar la sucesin 0 2 4 6 8 10 y (10, -1, 5) generar la sucesin 10 9 8 7 6 5

El modificador /D : Cdigo: FOR /D %%dirx in (m*) DO echo %%dirx El modificador /D sirve para mostrar directorios... En la lnea del anterior for nos muestra todos los directorios que comiencen por la letra "m".

Otro modificador /F (ms complejo) # El conjunto puede contener Conjunto de archivos > sin comillas Cadena de caracteres > con comillas dobles [ " " ] Comando > con comilla simple [ ' ' ] OPCIONES Citar

eol -> Todo lo que est despues de ste carcter (especificado con eol) ser ignorado (para cada linea) skip -> Es el nmero de lneas a saltarse al principio de un archivo o comando. delims -> Delims nos sirver para separar strings, si no se coloca esta opcin, se usarn como separadores "espacio" y "tab" tokens -> Con tokens especificamos qu segmentos, delimitados por "delims", sern pasados a las variables... por ejemplo: 1, 2, 3 Solo pasar los primeros 3 segmentos. 1,2* Pasa 2 segmentos, el primero y todo lo que este despues (el * regresa todo el resto de la linea) 1,2,3-7.8.9-14,16* Pasar los tres primeros segmentos, luego saltar al sptimo, seguir has el noveno. Luego saltar al 14, salta al dieciseis hasta que se acaben los segmentos. usebackq ->Cambia la forma de interpretar si es string o comando El comando for esta sacado de portalhacker,de el post del moderador Pyxolo

You might also like