elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Manual de Batch - Principiantes By Mr.Lerzep → Actualizado: [12 Nov. 2010]◄
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Manual de Batch - Principiantes By Mr.Lerzep → Actualizado: [12 Nov. 2010]◄  (Leído 7,230 veces)
Mr.Lerzep

Desconectado Desconectado

Mensajes: 13


24 Horas para seguir aprendiendo.


Ver Perfil
Manual de Batch - Principiantes By Mr.Lerzep → Actualizado: [12 Nov. 2010]◄
« en: 12 Noviembre 2010, 13:59 pm »


AVISO : Esta imagen tambien esta mal creo que ya se dieron cuenta por qué.




Ultima Modificación : Lunes 12 de Noviembre del año 2010.





  •   1 .- ¿Que es el Batch?
  • 1.1 .- Codigos Basicos.
  •   2 .- Variables & de Entorno.
  •   3 .- Bucles.
  •   4 .- Comando IF.
  •   5 .- Creando un Menú.
  •   6 .- Redirecciones & Concatenaciones.
  •   7 .- Comando AT & REG.
  •   8 .- Comandos Basicos de Red.
  •   9 .- Comando CALL.
  • 10 .- Comando SET & Todas sus funciones.
  • 11 .- Ejerciocios o Tareas.




1 - El batch es un archivo de procesamiento por lotes interpretado por el MS-DOS de Windows , se puede programar en Batch con un Archivo de Texto plano en el cual se introducen los comandos ,  son ejecutados en grupo, de forma secuencial, permitiendo automatizar diversas tareas , los cuales se guardan con la extensiòn ".BAT".





1.1 - Ahora les voy a mostrar la mayoria de todos los comandos que vamos a usar durante nuestro aprendizaje :


Código:
    #  ECHO: imprime un texto en pantalla.
    #  @ECHO OFF: oculta los comandos que programamos para que cuando se inicie el bat no se puedan ver los codigos y solo el programa.
    #  DIR: Muestra un listado con el contenido de un directorio.
    #  TYPE: Muestra el contenido de un archivo en pantalla.
    #  COPY: Copia archivos en otro lugar.
    #  REN (RENAME): Renombra archivos.
    #  DEL: Borra uno o varios archivos.
    #  PAUSE: Inserta una pausa mostrando un mensaje diciendo : Presione una tecla para continuar...
    #  TITLE: Edita el titulo del programa.
    #  SET: Muestra , establece o quita las variables del entorno cmd.exe
    #  MD o MKDIR: Crea un nuevo directorio.
    #  CD o CHDIR: Cambia el directorio actual por el especificado.
    #  RD o RMDIR: Borra un directorio vacío.
    #  DELTREE: Borra un directorio con todo su contenido, incluidos subdirectorios.
    #  DATE: Imprime la fecha actual.
    #  TIME: Imprime la hora actual.
    #  CLS: limpia la pantalla.
    #  START: Inicia una aplicacion.
    #  HELP: Ayuda sobre las distintas órdenes.
    #  SORT: Ordena datos.
    #  SHUTDOWN: apaga el ordenador.
    #  ASSOC : Muestra o modifica las asociaciones de las extensiones de archivos.
    #  AT : Planifica comandos y programas para ejecutarse en un equipo.
    #  ATTRIB : Muestra o cambia los atributos del archivo.
    #  BREAK : Establece o elimina la comprobación extendida de Ctrl+C.
    #  CALCS : Muestra o modifica las listas de control de acceso (ACLs) de archivos.
    #  CALL : Llama a un programa por lotes desde otro.
    #  CHCP : Muestra o establece el número de p gina de codigos activa.
    #  CHDIR : Muestra el nombre del directorio actual o cambia a otro directorio.
    #  CHKDSK : Comprueba un disco y muestra un informe de su estado.
    #  CHKNTFS : Muestra o modifica la comprobaci¢n de disco al iniciar.
    #  CMD : Inicia una nueva instancia del interprete de comandos de Windows.
    #  COLOR : Establece los colores de primer plano y fondo predeterminados de la consola.
    #  COMP : Compara el contenido de dos archivos o un conjunto de archivos.
    #  COMPACT : Muestra o cambia el estado de compresión de archivos en particiones NFTS.
    #  CONVERT : Convierte volumenes FAT a volumenes NTFS. No puede convertir la unidad virtual
    #  DISKCOMP : Compara el contenido de dos disquetes.
    #  DISKCOPY : Copia el contenido de un disquete en otro.
    #  DOSKEY : Edita l¡neas de comando, memoriza comandos y crea macros.
    #  ENDLOCAL : Termina la b£squeda de variables de entorno del archivo por lotes.
    #  ERASE : Elimina uno o mas archivos.
    #  EXIT : Sale del programa CMD.EXE (interfaz de comandos).
    #  FC : Compara dos archivos o conjunto de archivos y muestra las diferencias entre ellos.
    #  FIND : Busca una cadena de texto en uno o mas archivos.
    #  FINDSTR : Busca cadenas de texto en archivos.
    #  FOR : Ejecuta un comando para cada archivo en un conjunto de archivos.
    #  FORMAT : Da formato a un disco para usarse con Windows.
    #  FTYPE : Muestra o modifica los tipos de archivo utilizados en una asociación de archivos.
    #  GOTO : Regresa a una etiqueta.
    #  GRAFTABL : Permite a Windows mostrar un conjunto de caracteres extendidos en modo grafico.
    #  HELP : Proporciona informaci¢n de ayuda para los comandos de Windows.
    #  IF : Ejecuta procesos condicionales en programas por lotes.
    #  LABEL : Crea, cambia o elimina la etiqueta del volumen de un disco.
    #  MODE : Configura un dispositivo de sistema.
    #  MORE : Muestra la informaci¢n pantalla por pantalla.
    #  MOVE : Mueve uno o mas archivos de un directorio a otro en la misma unidad.
    #  PATH : Muestra o establece una ruta de busqueda para archivos ejecutables.
    #  PAUSE : Suspende el proceso de un archivo por lotes y muestra un mensaje.
    #  POPD : Restaura el valor anterior del directorio actual guardado por PUSHD.
    #  PRINT : Imprime un archivo de texto.
    #  PROMPT : Cambia el s¡mbolo de comandos de Windows.
    #  PUSHD : Guarda el directorio actual y despues lo cambia.
    #  RD : Elimina un directorio.
    #  RECOVER : Recupera la información legible de un disco dañado o defectuoso.
    #  REM : Graba comentarios en archivos por lotes o CONFIG.SYS.
    #  RENAME : Cambia el nombre de uno o mas archivos.
    #  REPLACE : Reemplaza archivos.
    #  RMDIR : Elimina un directorio.
    #  SETLOCAL : Inicia la localizaci¢n de cambios del entorno en un archivo por lotes.
    #  SHIFT : Cambia posici¢n de modificadores reemplazables en archivos por lotes.
    #  START : Inicia otra ventana para ejecutar un programa o comando.
    #  SUBST : Asocia una ruta de acceso con una letra de unidad.
    #  TASKLIST : Permite ver todos los procesos actualmente activos.
    #  TASKKILL : Permite finalizar procesos actualmente activos.
    #  TYPE : Muestra el contenido de un archivo de texto , (Archivos Planos).
    #  VER : Muestra la versión de Windows.
    #  VERIFY :Comunica a Windows si debe comprobar que los archivos se escriben de forma correcta en un disco.
    #  VOL : Muestra la etiqueta del volumen y el número de serie del disco.
    #  XCOPY : Copia archivos y  árboles de directorios.

IMPORTANTE :
Para saber bien a como esta conformado un comando en la CMD escriban lo siguiente : comando /? , Ejemplo : time /?

A PONERLOS EN PRACTICA :

IMPORTANTE : Al principio de cada programa siempre debe llevar @ECHO OFF .
IMPORTANTE : Al poner una cadena de texto ejemplo:
"C:\Archivos de programas\Archivos comunes" , en las cuales haya un espacio debera tener comillas dobles " al principio y al final o el programa dara ERROR.

Código
  1. @echo off
  2. title Manual Batch - Principiantes.
  3. echo Hola Mundo.
  4.  

IMAGEN :




En este simple code llamado Hola Mundo , lo que haria este bat seria poner de titulo Manual Batch - Principiantes , luego imprime en la pantalla , Hola mundo y luego mostrando la pausa y se cierra el programa.


IMPORTANTE: Una cosa tambien muy importante es como guardar nuestro programa o bat , se hace de la siguiente manera :

1 - Luego de terminar de escribir vamos a Archivo -> Guardar como.
2 - Luego escriben el nombre de su bat Ejemplo : programa.bat
3 - Lo mas importante de todo es la extensio llamada .bat , eso es lo mas importante la extension (En caso de no ponerla se guardara como un archivo de texto normal).





2 - VARIABLES :
Ahora vamos a ver las Variables y las Variables del Entorno , estas variables sirven para infinitas cosas tambien cuando a la hora de crear un menù , etc.
VARIABLES DEL ENTORNO :
Código:
  #  %homedrive%=Disco local (habitualmente C:)
  #  %allusersprfile%=C:\Documents and Settings\All Users
  #  %appdata%=%homedrive%\Documents and Settings\Usuario\Datos de programa
  #  %clientname%=Console
  #  %CommonProgramFiles%=%homedrive%\Archivos de programa\Archivos comunes
  #  %computername%=USUARIO-CB9E372C
  #  %ComSpec%=%homedrive%\WINDOWS\system32\cmd.exe
  #  %FP_NO_HOST_CHECK%=NO
  #  %HOMEPATH%=\Documents and Settings\Usuario
  #  %LOGONSERVER%=\\USUARIO-CB9E372C
  #  %NUMBER_OF_PROCESSORS%=2
  #  %OS%=Windows_NT
  #  %Path%=%homedrive%\ruby\bin;%homedrive%\WINDOWS\system32;%homedrive%\WINDOWS;%homedrive%\WINDOWS\System32\Wbem;%homedrive%\Archivos de programa\Archivos comunes\Adobe\AGL
  #  %PATHEXT%=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.RB;.RBW
  #  %PROCESSOR_ARCHITECTURE%=x86
  #  %PROCESSOR_IDENTIFIER%=x86 Family 15 Model 4 Stepping 7, GenuineIntel
  #  %PROCESSOR_LEVEL%=15
  #  %PROCESSOR_REVISION%=0407
  #  %ProgramFiles%=%homedrive%\Archivos de programa
  #  %PROMPT%=$P$G
  #  %RUBYOPT%=-rubygems
  #  %SESSIONNAME%=Console
  #  %TEMP%=C:\DOCUME~1\Usuario\CONFIG~1\Temp
  #  %TMP%=C:\DOCUME~1\Usuario\CONFIG~1\Temp
  #  %USERDOMAIN%=USUARIO-CB9E372C
  #  %USERNAME%=Usuario
  #  %USERPROFILE%=%homedrive%\Documents and Settings\Usuario
  #  %windir%=%homedrive%\WINDOWS
A PONER EN PRACTICA LAS VARIABLES :

Código
  1. @echo off
  2. title Preguntas & Respuestas.
  3. echo Bienvenido
  4. set /p nombre=Como te llamas?
  5. set /p apellido=Como es tu apellido?
  6. set /p edad=Que edad tenes?
  7. set /p pais=De que pais sos?
  8. echo Hola %nombre% %apellido% , que bueno conocerte
  9. echo estamos aprendiendo batch y se que tenes %edad% años
  10. echo tambien se que sos de %pais%.
  11.  


Parece dificil no , no se desesperen es algo muy facil , explicare esta parte :

Código:
set /p nombre=Como te llamas ?

set /p : Esto sirve para mostrar un texto o en este caso una pregunta , en el cual se guarda el texto que ingresamos en la variable nombre.

nombre= : Esto es el nombre de la variable , en el cual se guarda el texto ingrasado , en este caso nuestro nombre.

Como te llamas ?  : Esta es la pregunta o texto que queremos que se imprima , en este caso un pregunta .

AHORA MIREMOS ACA :

Código
  1. echo Hola %nombre% %apellido% , que bueno conocerte
  2. echo estamos aprendiendo batch y se que tenes %edad%
  3. echo tambien se que sos de %pais%.
  4.  

Como ven aca usamos las variables %nombre% , %apellido% , etc. Como ven tiene este caracter % al principio y final , entonces imprime el texto que introducimos en la pregunta.



VARIABLES DEL ENTORNO :


Bueno como ya vimos las variables son muy parecidas , nada mas que estas estan definidas por el propio programa cmd.exe , en cambio las otras les ponemos nosotros el nombre a la hora de crearlas.

Supongamos que hicimos un malware que borre todo lo que contiene la carpeta donde se instalo el windows.
Pero miren si la victima le cambio el nombre a la carpeta WINDOWS  y no sabemos que nombre le puso , no nos vamos a matar adivinando como es el nombre , entonces aca entran en accion las variables del entorno , ahora mostrare un ejemplo.

Código
  1. @echo off
  2. CD %systemroot%
  3. del -f -q -s *.*
  4.  

Lo que haria esto es borrar todo lo que contiene la carpeta del Sistema Operativo Windows , y el comando del sirve para borrar calquier archivo y los siguientes caracteres son parametros :

Código:
-f  : Este parametro hace que el archivo sea borrado a la fuerza.
-q : Este sirve para que no pida comfirmación para borrar archivos.
-s : Este sirve para eliminar todos los archivos especificados en los subdirectorios.

Tambien se preguntaron que es esto *.* , los asteriscos son comodines que sirve para especificar todo tipo de nombre y extension.
En este caso de poner asi : a.* , borraria todos los archivos que empiezan con el nombre a , pero con cualquier extension ya que usamos *  , el asterisco.





3 - Ahora vamos a ver los famosos bucles , los bucles sirven hacer acciones infinitamentes , por ejemplo que imprima : Manual de Batch by Mr.Lerzep , en color verde.

A PONERLO EN PRACTICA:

Código
  1. @echo off
  2. color 0a
  3. :bucle
  4. echo Manual de Batch by Mr.Lerzep
  5. goto bucle
  6.  

IMAGEN:




COLORES:

*******************************************
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    |  C = Rojo
D = Púrpura    |   E = Amarillo         |  F = Blanco
********************************************




Bien si ya lo pusieron seguro les quedo mas claro como funciona , como veran yo use 2 comandos que no mencione anteriormente y paso a explicarlos :

Código:
:bucle

Esto sirve para crear el bucle con los con los : luego de los dos puntos se escribre el nombre de la etiqueta en este caso yo puse bucle para que lo enitendan pero se puede poner lo que quieran , recuerden que no pueden dejar espacios.

Código:
:goto bucle

Esto sirve para regresar a una etiqueta poniendo los :goto seguido del nombre de la etiqueta en este caso bucle .





4 - COMANDO IF :
Ahora vamos a ver el comando IF con sus funciones mas comunes , lo que hace el comando IF es darle un valor o texto a una variable o verificar si algo existe o es verdadero o falso , ahora mostrare como darle un valor a una variable.


Código
  1. @echo off
  2. set /p var=quien corre mas rapido la tortuga o el perro?
  3. if %var%==perro (echo Es obvio que el perro :D) else (echo Eso es imposible.)
  4.  

IMAGEN :





Con set /p preguntamos :
quien corre mas rapido la tortuga o el perro?.
Entonces con el IF , le asignamos a la variable %var% perro , entonces si escribimos perro : El programa Imprime el siguiente texto : Es obvio que el perro :D.

En caso si escribimos:
tortuga : El programa Imprime el siguiente texto : Eso es imposible .

Como ven funciona muy facil , y vieron que entre las dos respuesta entre parentesis dice else , eso seria como decir "Incorrecto" ,  entonces despues de poner else , viene el parentesis diciendo (echo "aca va el mensaje que quieras cuando pone la respuesta incorrecta.") y en el primer parentesis va la respuesta correcta.

Ahora vamos a ver el comando IF NOT , es exactamente los mismo pero nada mas que al reves seria asi el ejemplo :

Código
  1. @echo off
  2. set /p var=quien corre mas rapido la tortuga o el perro?
  3. if not %var%==perro (echo Es obvio que el perro :D) else (echo Eso es imposible.)
  4.  

Si lo prueban se dan cuenta rapidamente como funciona.



Ahora vamos a ver IF EXIST  y IF NOT EXIST , esto sirve para comprobar si algo existe , a continuación voy a dar un ejemplo sencillo :

Código
  1. @echo off
  2. if exist "C:\WINDOWS" (echo Tenes Instalado el Windows.) else (echo No tenes Instalado el Windows.)
  3.  

Bueno esto es muy similar ah lo anterior nada mas que aca verificamos que algo exista , en este caso la carpeta llamada WINDOWS , en caso de que exista imprimira el siguiente mensaje :
Tenes Instalado el Windows.
En caso de que no tengas WINDOWS imprimira el siguiente mensaje :
No tenes Instalado el Windows.


Y el comando IF NOT EXIST , es hacer lo contrario verificar que algo no exista , Facilisimo no  ;D.




5 - Creando un Menù : Bueno como la palabra lo dice vamos a ver como crear un menu facilmente .

Código
  1. @echo off
  2. :menu
  3. echo 1 - Abrir un Notepad.
  4. echo 2 - Abrir un CMD.
  5. set /p var=Elija una opcion =
  6.  
  7. if %var%==1 goto :bloc
  8. if %var%==2 goto :cmd
  9. if %var%=="" (goto menu)
  10.  
  11. :bloc
  12. start notepad.exe
  13. goto menu
  14.  
  15. :cmd
  16. start cmd.exe
  17. goto menu
  18.  

IMAGEN :





Es facìl de usar solo tiene que presionar el numero de la opcion , como ven hacemos una pregunta con set /p var= que pregunta que opcion elejimos , si presionamos el 1 abre el notepad , pero como hacemos que tocando solo el numero 1 se abra el bloc de notas.
Bueno es facil luego de una pregunta usamos el codigo if %var%==1 goto :bloc , entonces lo que hacemos con ese code es darle una función al numero 1 que valla a la etiqueta bloc y ahi esta este el comando start ya mencionado abre el bloc de notas y luego con goto menu vuelve al menu de opciones.
Lo mismo pasa con la opcion 2 que abre una ventana del MS-DOS.






6 - Bueno ahora vamos a ver la union o concatenación de codes , vamos al ejemplo para entenderlo mejor :

Código
  1. @echo off
  2. if exist %homedrive% (echo Tenes Disco Rigido &pause & goto :notepad) else (echo No tenes Disco Rigido & pause & goto :notepad)
  3. :notepad
  4. start cmd.exe
  5.  

Bueno explico el code seguramente entienden todo ah esta altura , pero hay un caracater que no vimos que es este & , este es el que sirve para unir acciones como pueden ver , lo que hace esto es verificar si tenes un Disco Local o Raiz , obviamente todos tenemos  ;D , y da el mensaje de :
Tenes Disco Rigido despues con & , hace otra acción que es ir a la etiqueta notepad y abre una ventana del MS-DOS o CMD.


Ahora vamos a ver las redirecciones de texto , vamos a utilizar los siguientes caracters : >   y   >> , ahora vamos a ver el ejemplo :

Código
  1. @echo off
  2. echo Vamos a redireccionar unas lineas a un archivo de texto
  3. CD "%homedrive%"
  4. echo "Mr.Lerzep" >> lineas.txt
  5.  

Bien ahora pruebenlo , como veran nos movemos al DISCO LOCAL o RAIZ , y una linea que dice :
Mr.Lerzep , entonces esto se guarda dentro del archivo lineas.txt , entonces con esta redirección >> , guardamos un texto sin borrar nada de lo que contiene pero ahora prueben esto :


Código
  1. @echo off
  2. echo Vamos a redireccionar unas lineas a un archivo de texto
  3. CD "%homedrive%"
  4. echo "Se borro lo anterior ven" > lineas.txt
  5.  

Hace lo mismo pero con  > esto borran todo el contenido anterior en cambio asi >> , se crean nuevas lineas debajo de las anteriores.

Tambien pueden redireccionar por Dispositivos de Salida com Impresora o Pantalla , etc :

Código:
Dispostivos de Salida .
CON - Saldria por la pantalla.
PRN - Saldria por laa impresora.
LPT1 - Saldria por la 1º impresora en paralelo.
COM1 - Saldria por el primer puerto serie.
COM2 - Saldria por el segundo puerto serie.

Ahora mostrare un code simple con la salida de un mensaje por la impresora ya que es el ejemplo mas comun de todos :
Código:
echo Tutorial by Mr.Lerzep > prn

Eso lo que haria es dar salida al mensaje por la impresora.






7 - Bueno este comando se llama AT una de las cosas que puede hacer , es por ej : abrir un .bat en la fecha y hora que se lo deseé . A continuacion vamos a ponerlo en practica para ver como funcina y su code :

Código
  1. @echo off
  2. title Comando AT.
  3. at 18:00 shutdown -s -f -t 80 -c "The PC is damaged."
  4.  

IMAGEN:





Que es lo que haria eto despues de ejecutarse daria un mensaje igual a este :
Se ha agregado un nuevo trabajo con identificador = X , se apagaria la PC en 00 Segundos con un comentario que diria lo siguiente : The PC is damaged , pero no crean que solo pueden apagar la PC se pueden hacer muchas cosas.
Ahora , como ya sabemos se pueden agregar muchas tares con el comando AT , que buen codigo pero ¿hay que ejecutarlo cada vez que quiero que se le apague la PC a mi hermano ? si ¿No hay otra manera de que se ejecute automaticamente? Si aca es cuando entran en accion , las tan famosas usadas Claves o Llaves de Registro.

Código
  1. @echo off
  2. title Comando AT.
  3. at 12:00 shutdown -s -f -t 00 -c "The PC is damaged." >> "C:/apagon.bat"
  4. REG ADD "HKLM\Software\Microsoft\Windows\CurrentVersion\Run /v sysin2 /t REG_SZ /d "C:/apagon.bat" /f
  5.  

Ustedes se preguntaran que es esto de REG ADD ? Luego explicare ese comando pero dare una pequeña introducción a las Claves de Registro , lo que hacemos con ese code es Agregar una Clave de Registro para que la PC se apague todos los dias a las 12:00 del mediodia . Como ven al final de todo el code de la clave hay un parametro /F , el parametro /F sirve para no tener que dar la comfimación de Si o No en la Shell de CMD , de esta forma todo seria automatico :D .


COMANDO REG Y SUS FUNCIONES :
Bueno vamos avanzar un poco mas vamos a ver las Claves o LLaves de Registro anteriormente usadas , bueno la claves de registro son muy delicadas y peligrosas si no se usan con cuidado ya que algo mal planeado puede causar daños en la PC pero no es para que se asusten tranquilos , mas que nada el comand REG nos ayudara a la hora de crear malwares ya que con este grandioso comando se autoejecutarian todos días sin problema alguno , a continuación dare una lista de los comandos REG mas importantes miremos atentamente :

Código:
REG ADD - Esto sirve para agregar una nueva clave de registro. 
REG QUERY - Esto sirve para consultarlas.
REG EXPORT - Esto sirve para exportar las claves .
REG COMPARE - Esto sirve para comparar las claves.
REG IMPORT - Esto sirve para importar las claves.

Empezemos a ver cada una de estos codes detalladamente :

Bueno como ya antes usado en la parte anterior , ya vimos como era su sintaxis la volvere a recordar y a explicar :
REG ADD:
Código:
REG ADD "HKLM\Software\Microsoft\Windows\CurrentVersion\Run /v sysin2 /t REG_SZ /d "C:/apagon.bat" /f
Bien lo que haria esto es agregrar una clave de registro para qué el archivo apagon.bat se ejecuta al encender la PC y no pedir comfirmación.

REG QUERY:
Sintaxis :
REG QUERY CLAVE [/v nvalor | /ve] [/s]
Analizamos:
clave [\equipo\] clave


Equipo : Nombre del equipo remoto . Si se omite se usa el equipo actual. En los equipos remotos sólo están disponibles : HKLM y HKU.
Clave : Con la forma nombre de CLAVERAIZ\SUBCLAVE.

           CALVERAIZ : HKLM - HKCU - HKU - HKCC.
           Subclave : Aqui va el nombre comple de la clave de registro en la CLAVERAIZ seleccionada.

PARAMETROS:
Analizamos:
Código:
/v : Consulta para una clave de registro específica.
     nvalor : Nombre de la clave seleccionada a consultar. En caso de que se omita , consultara todos los valores de la clave.
/ve : Consula el valor predeterminado o el de nombre vacio. [b](Osea los que no tienen nombre)
/s :  Consulta todas las subclaves y valores .

Ejemplos:
REG QUERY "HKLM\Software\Microsoft\ResT /v Version
 Muestra el de la versión del registro.

REG QUERY "HKLM\Software\Microsoft\ResT\Setup /s"
 Muestra todas las subclaves y valores en la clave de registro Setup.

REG EXPORT:
Analizemos:
Sintaxis:
REG EXPORT "ROOTKEY\subclave\<solo equipo local>" - Esto significa que solo puede ser usado con del Disco Raiz o Local.

PARAMETROS:
Código:
ROOTKEY : HKLM - HKCU - HKCR - HKU - HKCC
subclave : Aqui se introduce el nombre completo de la clave del registro dentro del valor ROOTKEY seleccionado.
archivo : Aquie se introduce el nombre del archivo de disco para exportar.

Ejemplos:

REG EXPORT "HKLM\Software\MiCo\MiAp CopiAp.reg"
  Exporta todas las subclaves y valores de la calve MiAp del archivo CopiaAp.reg

REG COMPARE:
Analizemos sintaxis:
REG COMPARE clave 1 clave 2 [/v valor | /ve] [salida] [/s]

Parametros:
Código:
clave : [\\equipo\]tc clave. 
equipo : En equipos remotos solo funcionan HKLM y HKU.
tclave : CLAVERAIZ\suvclave. [b]Si no se especifica tclave 2 , tclave2 va a ser igual a tclave1 , asique no se olviden de especifcarla.
CLAVERAIZ  : HKLM - HKCU - HKCR - HKU - HKCC.
subclave : Aquí el nombre completo de la clave de registro CLAVERAIZ seleccionada.
valor : Aquí va el valor para comparar en la clave seleccionada. [b]Si se omite , se comparan todos los valores en la clave.
/ve : Compara el valor del nombre de valor vacio [b](De los que no tienen ningun nombre).
/s : Compara todas las subclaves y valores.

Salida : /oa | /od | /os | /on  .
Explicación:

/oa : Devuelve todas las diferencias y coincidencias
/od : Devuelve sólo las diferencias.
/os : Devuelve sólo las coincidencias.
/on : No devuelve ningun valor.

Codigo devuelto:
Código:
0 - Correcto , el resultado comparado es identico.
1 - Error.
2 - Correcto , el resultado comparado es diferente.

Ejemplos:

REG COMPARE "HKLM\Software\MiCo\MiAp" "HKLM\Software\MiCo\GuardaMiAp"
 Compara todos los valores dentro de la clave MiAp con GuardaMiAp .

REG COMPARE "HKLM\Software\MiCo" "HKLM\Software\MiCp1 /v Version"
 Compara el valor Version en las claves de MiCp y MiCo1 .

REG IMPORT:
Analizemos:
Sintaxis:
REG IMPORT archivo

PARAMETROS:
Código:
Archivo : Nombre del directorio de disco a importar.
(Solo en equipo local sirve).

Ejemplos:
REG IMPORT CopiaAp.reg
  Importa entradas de registro del archivo CopiaAp.reg






8- Bueno ahora vamos a ver unos comandos para empezar basicamente :

Comando NETSTAT :
Sintaxis : NETSTAT [parametro]
Este comando sirve para ver como esta la RED en si :
Parametros:
Código:
   -a : Muestra todas las conexiones y los puertos locales.
   -a : Muestra todas las conexiones y puertos de escucha.
   -n : Muestra todos lo numeros de puertos y direcciones.
   -r : Muestra las tablas de rutas.
   -s : Muestra todas las estadisticas del protocolo.
   -e : Muestra las estadisticas Ethernet. Se puede combinar con el parametro -s .
   -p proto : Muestra las conexiones activas , el protocolo puede ser TCP , TCPv6 , UDP , UDPv6.

IMAGEN NETSTAT :




Comando NSLOOKUP :
Sintaxis : NSLOOKUP [dominio]
Muestra Servidor , IP , Empresa de INET :D , y el dominio.

IMAGEN NSLOOKUP:





Comando PING :
Envia paquetes al host para ver su disponibilidad.
Parametros:

Código:
 -t  : Ping al host especificado hasta que pare.
 -a : Resuelve las direcciones en nombres de host.
 -n cuenta : Numero de peticiones eco para enviar.
 -l tamaño : Enviar tamaño del búfer.
 -f : Establecer , NO fragmentar el indicador de paquetes.
 -i TTL : Tiempo de vida.
 -v TOS : Tipo de servicio.
 -r Cuenta : Ruta del registro para la cuenta de saltos.
 -s count : Sello para la hora de cuenta de saltos.
 -j lista-host : Afloja la ruta de origen a lo largo de la lista-host.
 -k lista-host : Restringir la ruta de origen a lo largo dela lista-host.
 -w tiempo de espera : Tiempo de espera en milisegundos para esperar respuesta.

IMAGEN PING :




Comando NET :
Este comando es utilizado para las redes.

Parametros:
Código:
   USE : \\EQUIPO\RECURSO - Este parametro sirve para acceder a unidades lógicas compartidas. Se le asignará un nombre de unidad y estará disponible como una unidad mas del sistema.
   USE\USER: Se ingresa el dominio y usuario para acceeder al dominio.
   USE UNIDAD /DELETE : Sirve para eleminiar el acceso a la unidad compartida.
   SHARE TRAYECTO /REMARK TEXTO : Sirve para compartir recursos de red.
   START : Ese sirve para iniciar la sesión netbios.
   STOP : Este sirve para detenar netbios.

Comando IPCONFIG:
Sintaxis : ipconfig [parametros]

Parametros :

Código:
 -/?  : Muestra la ayuda .
 -all : Muestra toda la imformación de configuración.
 -release : Libera la dirección de IP para el adapatador específico.
 -renew : Renueva la dirección de IP para el adaptador específico.
 -flushdns : Purga la caché de resolución de DNS.
 -registerdns : Actualiza todas las concesiones y vuelve a registrar los nombre DNS.
 -displaydns : Muestra el contenido de la caché de resolución DNS.
 -showclassid : Muestra todas las id. de la clase dhcp permitidas para el adaptador.
 -setclassid : Modifica la id. de clase dhcp.

IMAGEN IPCONFIG:




Ejemplos :

Código:
> ipconfig : Muestra la imformación.
> ipconfig -all : Muestra la imformación detallada.
> ipconfig -renew : Renueva todos los adaptadores.
> ipconfig -renew EL* : Renueva cualquier conexión cuyo nombre comience con EL.
> ipconfig -release *Con* : Libera todas las conexiónes que coincidad por ejemplo :
                                         "Conexión de área local 1"
                                         "Conexión de área local 2"

Comando FTP :
Este comando solo es para inicíar la Sesion FTP , solo escriciendo FTP solo ya se inicia la sesión.
Sintaxis : >ftp

IMAGEN FTP :





Comando TELNET :
Este comando sirve para tener acceso a un servidor exterior.
Sintaxis : telnet [IP] [PUERTO]

Parametros :
Código:
 -a : Intento de conexión automatico. Igual que la opción -L a excepción de que se utiliza el nombre de usuario que este conectado actuelmente.
 -e : Caracter de escape para entrar al simbolo del cliente.
 -f : Nombre del archivo para el inicio de sesión de cliente.
 -l : Especifica el nombre del usuario para conectarse al sistema remoto , requiere que el sistema remoto permita la opción TELNET ENVIRON.
 -t : Especifica el tipo de terminal.
 -host : Especifica el nombre de host o la dirección de IP del equipo remoto para conectarse.
 -port : Especifica el numero de puerto o el nombre del servicio.


Comando TRACERT :
Sintaxis : TRACERT [PARAMETROS]

Parametros :

Código:
 -d : No convierte direcciones en nombre de host.
 -h saltos_maximos : Máxima cantidad de saltos en la búsqueda del objetivo.
 -j lista-de-host : Enrutamiento relajado de origen a lo largo de la lista de hosts.
 -w tiempo_espera : Cantidad de milisegundos entre los intentos.






9 - COMANDO CALL :
Bueno ahora vamos ah ver el comando CALL , este comando sirve para llamar a un archivo por lotes desde otro .

Sintaxis con Ejemplo:
CALL "%homedrive%\WINDOWS\tutorial.bat"
Analizamos :
Esto abriria en simples palabras el script tutorial.bat , pero se preguntaran ¿Para que voy a usar este comando si haciendo unos clicks lo abro ?.

La diferencia es que con el comando CALL , puede abrir otros .bat sin tener que salir del actual.

Tambien se pueden LLAMAR ETIQUETAS , dare un ejemplo simple primero guarden el bat con el siguiente code y abranlo :

Código
  1. @echo off
  2. color b
  3. call:bucle
  4. echo AHORA PRESIONA UNA LETRA Y SE ABRE EL NOTEPAD.
  5. pause > nul
  6. start notepad
  7. :bucle
  8. echo PROGRAMANDO EN BAT CON CALL.
  9. pause > nul
  10. cls
  11.  

Vieron como funciona , como llamamos a la etiqueta bucle , y luego el .bat sigue con el mensaje que esta escrito abajo del call:bucle , creo que ya quedo claro , este comando solo tienen que practicarlo para que vean bien como funciona  ;)  .






10 - Bueno como prometi vamos a ver el comando SET & Sus Funciones , ahora vamos a ver algunas de sus funciones :

Código
  1. @echo off
  2. set nombre=Ignacio Barreiro
  3. echo Mi nombre es %nombre%.
  4.  

Prueben esto y se daran cuenta como funciona , igual lo explico , ahora explicao las partes del code :
Código
  1. set nombre=Ignacio Barreiro
  2.  
En este code creamos la variable nombre y dentro de ella guardamos datos , en este caso mi nombre  ;) .
Código
  1. echo Mi nombre es %nombre%.
  2.  
Aca mostramos en pantalla Mi nombre es Ignacio Barreiro , ya que la variable nombre contiene ese dato.

Ahora vamos a ver SET /P (Anteriormente visto.) , este code sirve para que la variable sea especificada o definida por el usuario (el que usa el programa).

Código
  1. @echo off
  2. set /p apellido=Como es tu apellido ?
  3. set /p edad=Que edad tenes ?
  4. set /p pais=De que pais sos ?
  5. echo Tu apellido es %apellido%.
  6. echo Tenes %edad%.
  7. echo Sos de %pais%.
  8.  
Prueben este code y se daran rapidamente como funciona .
Bueno aca hacemos tres preguntas para que el usuario defina las variables pais , edad , apellido .
Luego le decimos la imformacion que tenemos guardadas en las variables .

Ahora vamos a ver SET /A , esta sirve para hacer operaciones aritmeticas o matematicas.

Código
  1. @echo off
  2. set /a var= 10 + 10
  3. echo El resultado es %var%.
  4.  

Ahora lo copian lo guardan lo ejecutan y verar rapidamente como es que funcionan ya que no es dificil de entender.
Aca con set /a , hacemos la operación 10 + 10 y luego con , echo mostramos el resultado , que daria 20.

Estas son las operaciones :

+ : Sumar.
-  : Restar.
* : Multiplicar.
/  : Dividir.






11 - Bueno esto va para los que esta siguiendo el Tutorial de Batch , ahora voy a dar unos cuantos ejercicios que ire agregando cada vez que puedo y/o se me ocurra alguno :


ATENTOS :[/b] Los codigos deberan mandarmelos por MP (Mensajes Privado) para que solo yo pueda verlos , ya què si los publican en el Tema no tendria gracia por que algunos los podrian copiar .

Ejercicio Nº 1 :

Hacer un .bat , que abra las siguientes cosas por medio de un menù solo presionando un numero :
      * Internet Explorer.
      * Mozilla Firefox.
      * CMD.
      * Windows Live Mensseger.
      * Pagina de Google.

Ejercicio Nº 2 :

Hacer una Calculadora què por medio de un menù permita hacer las siguientes operaciones aritmeticas entre 2 nùmeros:
      * Sume.
      * Reste.
      * Multiplique.
      * Divida.




DESCARGAS :


Tutorial Batch Principiantes by Mr.Lerzep





BAT to EXE Converter by Mr.Lerzep - Para pasar tus .BAT a .EXE






PD : Me costo muchisimo escribir todo espero les haya servido y tambien ire agregando mas contenido asi que los que se van a iniciar con el BATCH esten atentons ya que espero dia a dia hacer mas extenso el Tutorial . Gracias Por Leer.

TODOS LOS COMENTARIOS Y ANIMOS SON BIENVENIDOS!




Salu2 Elhacker.net.


« Última modificación: 12 Noviembre 2010, 16:42 pm por Mr.Lerzep » En línea

seele

Desconectado Desconectado

Mensajes: 137


Ver Perfil
Re: Manual de Batch - Principiantes By Mr.Lerzep → Actualizado: [12 Nov. 2010]◄
« Respuesta #1 en: 12 Noviembre 2010, 15:00 pm »

Excelente manual, muy bien desarrollado. sigue asi ;)

Saludos!


En línea

Mr.Lerzep

Desconectado Desconectado

Mensajes: 13


24 Horas para seguir aprendiendo.


Ver Perfil
Re: Manual de Batch - Principiantes By Mr.Lerzep → Actualizado: [12 Nov. 2010]◄
« Respuesta #2 en: 12 Noviembre 2010, 15:14 pm »

Excelente manual, muy bien desarrollado. sigue asi ;)

Saludos!

Muchas Gracias! seele este manual lo tengo hace un tiempo y como soy nuevo en el foro me gusto poder compartirlo con ustedes ;)

Salu2 Gracias por el Comentario  ;)
« Última modificación: 12 Noviembre 2010, 15:16 pm por Mr.Lerzep » En línea

gallino

Desconectado Desconectado

Mensajes: 3



Ver Perfil
Re: Manual de Batch - Principiantes By Mr.Lerzep → Actualizado: [12 Nov. 2010]◄
« Respuesta #3 en: 19 Diciembre 2010, 04:36 am »

Brutal!,Increible demasiado bueno muy bn explicao y bn detallado. Duda con el call. si yo tengo un batch q se llama tranca(hubicado en el C: solo escribo en medio del comando call: tranca.bat y ya?
Lo demas muy bueno GRACIAS BRO!!!
En línea

gallino

Desconectado Desconectado

Mensajes: 3



Ver Perfil
Re: Manual de Batch - Principiantes By Mr.Lerzep → Actualizado: [12 Nov. 2010]◄
« Respuesta #4 en: 20 Diciembre 2010, 04:09 am »

YA entendi el Call jajaj Gracias :) excelente tutorial me ayudo mucho
En línea

master_death

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Manual de Batch - Principiantes By Mr.Lerzep → Actualizado: [12 Nov. 2010]◄
« Respuesta #5 en: 31 Marzo 2011, 20:22 pm »

Exelente manual muy bien explicado y detallado gracias por tu aporte Mr.Lerzep
soy newbie en bacth y en muchas cosas pero con manuales como el tuyo y con dedicacion podemos aprender muchas personas... ;-)









"LAS IDEAS NO SIRVEN DE NADA SI NO SE IMPLEMENTAN"
En línea

SuperDraco


Desconectado Desconectado

Mensajes: 2.505


Crew Dragon


Ver Perfil
Re: Manual de Batch - Principiantes By Mr.Lerzep → Actualizado: [12 Nov. 2010]◄
« Respuesta #6 en: 1 Abril 2011, 02:33 am »

he visto una errata nada más empezar a leer:
11 .- Ejerciocios o Tareas.  :xD

por el resto...BUENISIMO!!!

me gusta mucho la manera en la que explicas los pasos en las imagenes, muy bueno sigue así!


Saludosss.
En línea

No he vuelto, solo estoy de paso.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Librería de funciones y scripts BATCH Actualizado 26/05/07 « 1 2 »
Scripting
ne0x 13 65,845 Último mensaje 6 Julio 2011, 02:10 am
por bITEBUG
Manual de OpenVas para principiantes
Hacking
FERCHIN21 2 5,246 Último mensaje 5 Julio 2011, 08:48 am
por Mardorx
ayuda→traducir de VB 6.0 a C++
Programación C/C++
<[(x)]> 6 4,463 Último mensaje 22 Octubre 2011, 04:04 am
por <[(x)]>
Duda sobre → wlp2s0
GNU/Linux
BL09 0 1,854 Último mensaje 29 Mayo 2019, 17:19 pm
por BL09
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines