Taller Programación en Batch #1

  • 5 Respuestas
  • 13673 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Conectado ANTRAX

  • *
  • Administrator
  • Mensajes: 5636
  • Actividad:
    53.33%
  • Country: ar
  • Reputación 37
  • ANTRAX
  • Skype: underc0de.org
  • Twitter: @Underc0de
    • Ver Perfil
    • Underc0de
    • Email

Taller Programación en Batch #1

  • en: Octubre 05, 2014, 08:48:50 pm

Historia Del MS-DOS

MS-DOS (siglas de MicroSoft Disk Operating System, Sistema operativo de disco de Microsoft) es un sistema operativo basado en X86. MS-DOS nació en 1981 al ser encargada Microsoft de producir un sistema operativo para la gama de computadores personales IBM PC de IBM. Rápidamente Microsoft compró los derechos de QDOS también conocido como 86-DOS, de Seattle Computer Products, y comenzó a trabajar en las modificaciones para poder cumplir con los requerimientos de IBM. La primera edición, MS-DOS 1.0, fue presentada en 1982. La versión incluida en los PC's de IBM fue conocida como PC DOS. Aunque MS-DOS y PC-DOS fueron desarrollados por Microsoft e IBM en paralelo, los dos productos se separaron con el tiempo.


Como Crear Un Archivo .BAT

Para crear un archivo bat primero abrimos el notepad (o block de notas) También se puede usar Notepad++ pero lo veremos en la próxima entrega)


Sino también: Inicio > Todos los programas > Accesorios > Bloc de notas


Al abrir el bloc de notas escribimos el código y lo guardamos con extensión .bat (fijarse que diga todos los archivos


Y ahí tenemos hecho el archivo.bat.


@Echo off/on

El @echo off/on es para determinar si queremos mostrar los comandos que escribimos (independientemente del output del comando) Para ser mas claros les mostrare dos fotos y va al principio de todo código.


En esta foto se puede ver el input (comando ingresado) que seria echo hola y el output (el resultado del comando) que seria solo mostrar hola. Lo mismo para pause (es el input) y el output es una pausa que se expresa con “Presione una tecla para continuar…”
Esto seria con @echo off


El código que use para ese .Bat fue:

Código: DOS
  1. @Solo los usuarios pueden ver los links. Registrate o Ingresar off
  2. Solo los usuarios pueden ver los links. Registrate o Ingresar hola
  3. Solo los usuarios pueden ver los links. Registrate o Ingresar
  4. Solo los usuarios pueden ver los links. Registrate o Ingresar.


Echo/Echo.

Como ya saben, el Echo imprime lo que escribimos. Si escribimos: Echo hola mundo entonces imprimirá: Hola mundo.


El código fue simplemente:

Código: DOS
  1. @Solo los usuarios pueden ver los links. Registrate o Ingresar off
  2. Solo los usuarios pueden ver los links. Registrate o Ingresar hola
  3. Solo los usuarios pueden ver los links. Registrate o Ingresar como
  4. Solo los usuarios pueden ver los links. Registrate o Ingresar andan
  5. Solo los usuarios pueden ver los links. Registrate o Ingresar
  6. Solo los usuarios pueden ver los links. Registrate o Ingresar

El echo. Sirve para dejar una línea en blanco (en este caso es color negro pero se entiende lo que quiero decir) Acá una foto para ilustrarlo.


Lo único que hice fue agregar un echo. Entre cada línea.

Código: DOS
  1. @Solo los usuarios pueden ver los links. Registrate o Ingresar off
  2. Solo los usuarios pueden ver los links. Registrate o Ingresar hola
  3. Solo los usuarios pueden ver los links. Registrate o Ingresar.
  4. Solo los usuarios pueden ver los links. Registrate o Ingresar como
  5. Solo los usuarios pueden ver los links. Registrate o Ingresar.
  6. Solo los usuarios pueden ver los links. Registrate o Ingresar andan
  7. Solo los usuarios pueden ver los links. Registrate o Ingresar.
  8. Solo los usuarios pueden ver los links. Registrate o Ingresar
  9. Solo los usuarios pueden ver los links. Registrate o Ingresar


Goto

Bueno acá veremos los comandos GOTO/ELSE. Vamos a mostrarlo para que vean que tal es.

Código: DOS
  1. @Solo los usuarios pueden ver los links. Registrate o Ingresar off
  2. Solo los usuarios pueden ver los links. Registrate o Ingresar hola
  3. :bucle
  4. Solo los usuarios pueden ver los links. Registrate o Ingresar como andas
  5. Solo los usuarios pueden ver los links. Registrate o Ingresar bucle

Acá lo que hace el código es imprimir hola, después le ponemos un “:” para definir un label. Entonces cuando ponemos goto bucle es que estamos yendo al label :bucle entonces así imprimiría el “como andas” infinitas veces. Otras funciones de esto se pueden ver también en el comando IF que lo veremos después.


Código: DOS
  1. @Solo los usuarios pueden ver los links. Registrate o Ingresar off
  2. :bucle
  3. Solo los usuarios pueden ver los links. Registrate o Ingresar hola
  4. Solo los usuarios pueden ver los links. Registrate o Ingresar bucle


Pause

Bueno el comando PAUSE hace exactamente lo que dice el nombre, hace una pausa que se puede quitar apretando cualquier tecla. Para dejarlo mas claro les paso una foto


Código: DOS
  1. @Solo los usuarios pueden ver los links. Registrate o Ingresar off
  2. Solo los usuarios pueden ver los links. Registrate o Ingresar hola como andan?
  3. Solo los usuarios pueden ver los links. Registrate o Ingresar acá esta el Solo los usuarios pueden ver los links. Registrate o Ingresar
  4. Solo los usuarios pueden ver los links. Registrate o Ingresar
  5. Solo los usuarios pueden ver los links. Registrate o Ingresar ahí apreté cualquier tecla y el código sigue
  6. Solo los usuarios pueden ver los links. Registrate o Ingresar

Para hacer que desaparezca el “presione cualquier tecla para continuar” le tenemos que agregar > nul al pause. Sería algo así:

Código: DOS
  1. @Solo los usuarios pueden ver los links. Registrate o Ingresar off
  2. Solo los usuarios pueden ver los links. Registrate o Ingresar hola como andan?
  3. Solo los usuarios pueden ver los links. Registrate o Ingresar acá esta el Solo los usuarios pueden ver los links. Registrate o Ingresar
  4. Solo los usuarios pueden ver los links. Registrate o Ingresar > Solo los usuarios pueden ver los links. Registrate o Ingresar
  5. Solo los usuarios pueden ver los links. Registrate o Ingresar ahí apreté cualquier tecla y el código sigue
  6. Solo los usuarios pueden ver los links. Registrate o Ingresar > Solo los usuarios pueden ver los links. Registrate o Ingresar


DIR

El comando DIR enlista todos los archivos que tengamos en el directorio especificado. Por ejemplo para cambiar un directorio hacemos CD.

Código: DOS
  1. @Solo los usuarios pueden ver los links. Registrate o Ingresar off
  2. Solo los usuarios pueden ver los links. Registrate o Ingresar C:\Windows
  3. Solo los usuarios pueden ver los links. Registrate o Ingresar
  4. Solo los usuarios pueden ver los links. Registrate o Ingresar

Eso haría que en vez de estar en C:\Windows\System32\cmd.exe este en C:\Windows.

Para enlistar los archivos y directorio damos el comando DIR.
Acá se ve ilustrado lo que digo.



MKDIR

Lo que hace el comando MKDIR es crear un directorio en una ruta especificada. Ponemos CD y elegimos el directorio (Ej.: CD C:\Documents and Settings\Administrador\Escritorio) y ahí ponemos MKDIR Hola. Eso nos crearía una carpeta nueva llamada Hola. Una foto.


Nota: Acá puse @echo on para que vean los comando tipeados.

Código: DOS
  1. @Solo los usuarios pueden ver los links. Registrate o Ingresar on
  2. Solo los usuarios pueden ver los links. Registrate o Ingresar C:\Documents and Settings\Administrador\Escritorio
  3. Solo los usuarios pueden ver los links. Registrate o Ingresar > Solo los usuarios pueden ver los links. Registrate o Ingresar
  4. Solo los usuarios pueden ver los links. Registrate o Ingresar TallerBatch
  5. Solo los usuarios pueden ver los links. Registrate o Ingresar > Solo los usuarios pueden ver los links. Registrate o Ingresar
  6. Solo los usuarios pueden ver los links. Registrate o Ingresar


REM

El comando REM es una abreviación de la palabra en ingles “Remak” que es para marcar algo. Lo que quiere decir es que sirve para hacer comentarios en el código, es para encontrar partes mas fácilmente o para acordarse de ciertas cosas sin que afecte el código. Ejemplo:

Código: DOS
  1. @Solo los usuarios pueden ver los links. Registrate o Ingresar off
  2. REM Acá empieza el bucle
  3. :bucle
  4. Solo los usuarios pueden ver los links. Registrate o Ingresar Hola
  5. Solo los usuarios pueden ver los links. Registrate o Ingresar bucle

También para hacer comentarios se usa :: ACUERDENSE QUE SON DOS :: CUANDO SE USA UNO (:) ES PARA HACER UN LABEL.

Código: DOS
  1. @Solo los usuarios pueden ver los links. Registrate o Ingresar off
  2. ::Acá empieza el bucle
  3. :bucle
  4. Start
  5. Solo los usuarios pueden ver los links. Registrate o Ingresar bucle


IF Básico/Else

Bueno el comando IF es uno de las importantes y poderosos en batch. Ya que tiene múltiples usos y su versatilidad es bastante grande. Se puede usar para chequear varias cosas, acá como es el básico veremos si existe un archivo con IF EXIST. Por ejemplo la sintaxis es así:

IF EXIST “X” “command” else “command”
O también “command” & “command” &,etc…

Veamos un ejemplo:

Código: DOS
  1. @Solo los usuarios pueden ver los links. Registrate o Ingresar off
  2. Solo los usuarios pueden ver los links. Registrate o Ingresar Solo los usuarios pueden ver los links. Registrate o Ingresar hola.txt Solo los usuarios pueden ver los links. Registrate o Ingresar hola & Solo los usuarios pueden ver los links. Registrate o Ingresar existe
  3. Solo los usuarios pueden ver los links. Registrate o Ingresar > Solo los usuarios pueden ver los links. Registrate o Ingresar
  4. Solo los usuarios pueden ver los links. Registrate o Ingresar

El código esta separado así

(IF exist) (hola.txt) (echo hola) (&) (mkdir existe)

IF exist se fija si existe ese archivo, el echo hola es la parte de “command” que seria que si existe tal archivo hacer tal comando y el & es para no solo hacer echo hola sino para agregar mas comandos como el MKDIR (que lo vimos antes). También se puede hacer esto.

Código: DOS
  1. @Solo los usuarios pueden ver los links. Registrate o Ingresar off
  2. Solo los usuarios pueden ver los links. Registrate o Ingresar Solo los usuarios pueden ver los links. Registrate o Ingresar hola.txt Solo los usuarios pueden ver los links. Registrate o Ingresar existe el archivo Solo los usuarios pueden ver los links. Registrate o Ingresar Solo los usuarios pueden ver los links. Registrate o Ingresar no existe
  3. Solo los usuarios pueden ver los links. Registrate o Ingresar > Solo los usuarios pueden ver los links. Registrate o Ingresar
  4. Solo los usuarios pueden ver los links. Registrate o Ingresar

Se separaría así

(IF exist) (hola.txt) (Echo existe el archivo) (Else) (Echo no existe)
Esto se utiliza para fijarse si existe el hola.txt entonces echo Existe el archivo y si no existe el archivo entonces echo No existe.


SET

No, esto no es un social engineering tool :P El comando SET es para definir variables o para usar PATHs preestablecidos. Para ver los PATHs preestablecidos le damos a set en el CMD.


Entonces esto sirve para usar BATs en otras PCs y para evitar errores. Ejemplo: Por ahí alguien tiene su directorio de Windows en D:\Windows entonces si ponemos CD C:\windows no nos funcionara, para evitar eso hacemos CD %windir% entonces nos dirigirá automáticamente en donde tengamos el directorio de Windows puesto.

El set también se puede hacer para establecer variables con esta sintaxis:

Set Nombre= valor
Un ejemplo seria:

Código: DOS
  1. @Solo los usuarios pueden ver los links. Registrate o Ingresar off
  2. Solo los usuarios pueden ver los links. Registrate o Ingresar var1=hola
  3. Solo los usuarios pueden ver los links. Registrate o Ingresar %var1%
  4. Solo los usuarios pueden ver los links. Registrate o Ingresar
  5. Solo los usuarios pueden ver los links. Registrate o Ingresar

Ahí saldría el texto: Hola
Shutdown

Este es un comando muy básico pero puede llagar a ser muy útil (yo personalmente lo uso todos los días)

Estas son las sintaxis que se pueden usar:


Entonces de ahí elegimos las sintaxis que queramos y las usamos.

Por ejemplo:

Shutdown –s –f –t 230

Eso  haría que se apague (-s) que fuerce el cierre de aplicaciones (-f) y que tenga un contador de 230 segundos para apagarse (-t 230)

Esto nos viene bien por ejemplo si nos vamos a dormir y dejamos descargando algo y faltan 2 horas para descargarse, ponemos shutdown para que cuando termine de descargarse se apague la PC.

Shutdown –s f –t 7200

El 7200 es porque son segundos (2 horas)


Solo los usuarios pueden ver los links. Registrate o Ingresar



Desconectado iatsm

  • *
  • Underc0der
  • Mensajes: 175
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil

Re:Taller Programación en Batch #1

  • en: Octubre 05, 2014, 11:18:38 pm
¡Excelente!
No sé, pero al ver este taller me entro una nostalgia, me recuerda viejos tiempos.
Gracias por este grandioso Taller, saludos.
יהוה
Diseño Gráfico - Informática.

Desconectado Baku

  • *
  • Underc0der
  • Mensajes: 64
  • Actividad:
    0%
  • Reputación 0
  • Skype: Baku.indetectables
    • Ver Perfil

Re:Taller Programación en Batch #1

  • en: Octubre 18, 2014, 05:53:49 am
Muy buen taller para aquellos que empiezan :)
Saludos :P
Huelo a VERDE y no es Marihuana ;)

Desconectado sanbatman

  • *
  • Underc0der
  • Mensajes: 6
  • Actividad:
    0%
  • Reputación 0
  • Skype: sanbatman
    • Ver Perfil
    • Email

Re:Taller Programación en Batch #1

  • en: Octubre 19, 2014, 06:24:37 pm
Muy buen taller para aquellos que empiezan

Desconectado aika

  • *
  • Underc0der
  • Mensajes: 180
  • Actividad:
    0%
  • Country: 00
  • Reputación 0
  • ehie binah
  • Twitter: https://twitter.com/aikacode
    • Ver Perfil
    • http://codenameaika.blogspot.mx/
    • Email

Re:Taller Programación en Batch #1

  • en: Octubre 19, 2014, 06:47:19 pm
muy bueno ;)

Desconectado drotha2

  • *
  • Underc0der
  • Mensajes: 16
  • Actividad:
    3.33%
  • Reputación 0
    • Ver Perfil
    • Landraces

Re:Taller Programación en Batch #1

  • en: Octubre 21, 2014, 04:53:53 pm
buenas,

Así comencé yo, incluso si me pongo a recordar... picando código en el spectrum...   :'( :'(

Que tiempos...

Muchas gracias, me apunto que seguro que aprendo algo y recuerdo aun mas...

Saludos

 

Taller de pentesting con Kali Linux - Parte I

Iniciado por ANTRAX

Respuestas: 58
Vistas: 53303
Último mensaje Diciembre 26, 2019, 11:32:30 pm
por Hdm46
Taller de Pentesting con Kali Linux #2

Iniciado por ANTRAX

Respuestas: 32
Vistas: 32380
Último mensaje Noviembre 10, 2017, 07:40:18 am
por Brittsman97
Taller de Seguridad Wireless #4

Iniciado por ANTRAX

Respuestas: 24
Vistas: 26278
Último mensaje Mayo 24, 2018, 03:06:03 am
por Vyper
Taller de Seguridad Wireless #1

Iniciado por ANTRAX

Respuestas: 25
Vistas: 28485
Último mensaje Abril 14, 2019, 02:50:29 pm
por iSauel
Taller de Seguridad Wireless #3

Iniciado por ANTRAX

Respuestas: 14
Vistas: 13034
Último mensaje Septiembre 28, 2014, 12:25:27 am
por Gabriela