Breve introducci�n BATCH.doc

15
Breve introducción: BATCH Que es eso raro del BATCH? Para que me puede servir? Esto sirve para hackear? Batch es un lenguaje de programación MUY FÁCIL que se usa en la consola del S.O. windows. Es un lenguaje que no necesita software, ni compiladores.. y en poco tiempo te permite hacer verdaderas curiosidades. Sirve para hackear? POR SUPESTO!! Vamos a empezar con una practica muy sencilla. Ve a INICIO, luego a EJECUTAR y escribe CMD si tienes XP o COMMAND si tienes win9x. Se abre una pantalla negra con letras blancas. A esto se le llama msdos, console, consola, linea de comandos o shell. Desde ahi puedes escribir comandos que darían ordenes especificas a tu makina. Las instrucciones que escribas aquí tendrán prioridad absoluta en todo momento. Por ello la efectividad de este lenguaje. Sencillez, rapidez y efectividad se unen para formar este lenguaje de programación. Ok ahora escribe lo siguiente (solo para xp): shutdown -s -t 120 -c "Probando una cosa" Escribelo tal cual y presiona enter Este es el metodo que usa el famoso virus lsasser que se ha propagado por todo el mundo. Para detenerlo escribe shutdown -a y todo volvería a la normalidad. Acabamos de descubrir la forma de crear un virus (algo mediocre )en 10 segundos! Que necesito para comenzar? Windows. Recomendable XP.. pero win9x también sirve. La linea de comandos y el bloc de notas de windows. Con un poco de paciencia veras como salen cosas interesantes!. Seguimos con nuestro ejemplo practico. Abre el bloc de notas. Escribe allí lo siguiente: shutdown -s -f -t 15 -c "Virus creado por mi!!" Ahora le damos a GUARDAR COMO. Seleccionamos TODOS LOS ARCHIVOS. y lo guardamos con el siguiente nombre: MIVIRUS.BAT Es imprescindible que tenga extension BAT. Ok, acabas de crear tu primer virus. TAN FACIL?? No te lo puedes ni creer verdad? prueba a pinchar dos veces sobre el a ver que ocurre... El equipo se apagara en 15 segundos!! Esta vez solo podrías poner shutdown -a a tiempo si eres extremadamente rápido! Si copias este archivo mivirus.bat en la carpeta programas\inicio del windows abras creado un verdadero problema... Esta carpeta tiene la capacidad de iniciar en el arranque cualquier programa que esta dentro de ella. Si colocamos nuestro recirn creado virus.. haremos que el ordenador no permanezca encendido mas de 15 segundos!! Usaremos la linea de comandos como centro de practicas, y el bloc de notas como compilador. Como ves es uno de los lenguajes de programación mas sencillos que existen.

Transcript of Breve introducci�n BATCH.doc

Page 1: Breve introducci�n BATCH.doc

Breve introducción: BATCH

Que es eso raro del BATCH?     Para que me puede servir?     Esto sirve para hackear?

Batch es un lenguaje de programación MUY FÁCIL que se usa en la consola del S.O. windows. Es un lenguaje que no necesita software, ni compiladores.. y en poco tiempo te permite hacer verdaderas curiosidades.

Sirve para hackear? POR SUPESTO!!

Vamos a empezar con una practica muy sencilla.

Ve a INICIO, luego a EJECUTAR y escribe CMD si tienes XP o COMMAND si tienes win9x.Se abre una pantalla negra con letras blancas. A esto se le llama msdos, console, consola, linea de comandos o shell. Desde ahi puedes escribir comandos que darían ordenes especificas a tu makina. Las instrucciones que escribas aquí tendrán prioridad absoluta en todo momento. Por ello la efectividad de este lenguaje. Sencillez, rapidez y efectividad se unen para formar este lenguaje de programación.Ok ahora escribe lo siguiente (solo para xp):

shutdown -s -t 120 -c "Probando una cosa"   Escribelo tal cual y presiona enter

Este es el metodo que usa el famoso virus lsasser que se ha propagado por todo el mundo.Para detenerlo escribe shutdown -a y todo volvería a la normalidad.Acabamos de descubrir la forma de crear un virus (algo mediocre   )en 10 segundos!

Que necesito para comenzar?

Windows. Recomendable XP.. pero win9x también sirve. La linea de comandos y el bloc de notas de windows. Con un poco de paciencia veras como salen cosas interesantes!.

Seguimos con nuestro ejemplo practico. Abre el bloc de notas. Escribe allí lo siguiente:

shutdown -s -f -t 15 -c "Virus creado por mi!!"

Ahora le damos a GUARDAR COMO. Seleccionamos TODOS LOS ARCHIVOS. y lo guardamos con el siguiente nombre: MIVIRUS.BATEs imprescindible que tenga extension BAT.Ok, acabas de crear tu primer virus.         TAN FACIL??   No te lo puedes ni creer verdad?   prueba a pinchar dos veces sobre el a ver que ocurre...

El equipo se apagara en 15 segundos!! Esta vez solo podrías poner shutdown -a a tiempo si eres extremadamente rápido!

Si copias este archivo mivirus.bat en la carpeta programas\inicio del windows abras creado un verdadero problema...Esta carpeta tiene la capacidad de iniciar en el arranque cualquier programa que esta dentro de ella. Si colocamos nuestro recirn creado virus.. haremos que el ordenador no permanezca encendido mas de 15 segundos!!

Usaremos la linea de comandos como centro de practicas, y el bloc de notas como compilador.Como ves es uno de los lenguajes de programación mas sencillos que existen.

Para avanzar mas rápido no voy a comentar los comandos mas usuales como DIR, DEL, RD, MD, CD, EXIT, etc... podéis buscar cualquier manual para msdos de xp. hay miles en google.

Empezaremos con cosas sencillas... y acabaremos haciendo algunas cosas interesantes.. .

Es todo por hoy!Un saludo!   k4ron73----------------------------------------------------------------------------------------------------------------------Seguimos un poco con el comando shutdown:

Accedemos a la consola.Si escribimos HELP tendremos una lista de los comandos basicos del sistema, con una breve explicación de que hace cada uno.Si queremos información mas especifica solo tenemos que escribir el nombre del comando /?.por ejemplo, escribe:

shutdown /?

Te saldría explicado que utilidad tiene este comando y todos sus modificadores. un modificador o parámetro es  -f, -t,

Page 2: Breve introducci�n BATCH.doc

-a, /vv, /L, etc.. se colocan después del comando y sirven para darle instrucciones mas precisas.

Vamos a comentar por encima los parámetros de shutdown que mas vamos a usar de ahora en adelante:

-s   Da la orden de apagar el equipo (shutdown -s = apaga el equipo al instante)-r   En vez de apagar lo que hace es reiniciar el equipo. (shutdown -r)-a   Con esta orden evitamos que el sistema se apaga o reinicie.-f   Fuerza a cerrar todas las aplicaciones que requieran autorización o confirmación!!-c ""   Entre las comillas puedes poner un comentario que saldría en la pantalla de aviso.-t 00  puedes poner el tiempo en segundos que quieres que dure el Pc encendido.

Veamos con un ejemplo practico:Estoy instalando una actualización de windows que tarda 20 minutos en instalarse.. y después tendría que reiniciar el equipo para que haga efecto. Pero no me apetece estar 20 minutos sentado delante de la pantalla..Tecleamos lo siguiente:

shutdown -r -f -t 1800

esto haría que en 30 minutos (30min x 60sg=1800sg) el pc se reinicie (-r) sin pedir confirmación y forzando a cerrar todas las aplicaciones (-f)

Otro supuesto:Estoy en un ciber.. y me cae muy mal el dueño. además sospecho que la vez anterior me cobre de mas... asi que voy a gastarle una broma simpática que no revertira daños en el pc..

pondremos lo siguiente:

at 17:15 shutdown -s -f -t 15 -c "De camino que vas a decirle al due?o que se te ha apagado el ordenador, dile que es un "soy un "soy un "soy un "soy un "soy un "soy un capullo"""""" de mi parte"

JAJAJAJAJAJA!! Habria que ver la cara que se le queda al que esta usando el pc al ver este mensaje!!

Hemos programado una tarea con el comando AT para que se ejecute a las 17:15h.Este es otro comando que usaremos mucho.. y que ofrece grandes posibilidades. Puedes, por ejemplo programar que cargue el CounterStrike a la hora que tu quieras... o que se desactive el antivirus.. (jejeje paciencia.. todo a su debido tiempo)Pero ya veremos a fondo este comando el siguiente dia!

saludos! k4ron73 2005

    Tengo que hacer una corrección a este pequeño manual:

El programador de tareas en la linea de comandos (AT) no funciona tal y como viene lineas mas arriba.Aunque en la misma ayuda del comando viene explicito la posibilidad de REPLACEar comandos, esto no es cierto en la practica.Tendremos que crear un archivo bat con el código y guardarlo en un carpeta, y POSTERIORMENTE programarlo para que se ejecute.

En el ejemplo de arriba, haríamos un .bat con el siguiente código:

shutdown -s -f -t 15 -c "De camino que vas a decirle al dueño que se te ha apagado el ordenador, dile que es un "soy un "soy un "soy un "soy un "soy un "soy un capullo"""""" de mi parte"

Le ponemos un nombre que no llame mucho la atención y lo guardamos en una carpeta. Por ejemplo lo llamaremos

SHUT.BAT y lo guardaremos en C:\WINDOWS. ?

Luego para programarlo escribiremos directamente en la linea de comandos:

AT 17:15 C:\WINDOWS\SHUT.BAT De esta manera se ejecutara sin problemas.Soy nuevo, pero se me ocurrio algo, para agregarle al shutdown... para hacer un poco mas molesto el este Cuasi-Virus.Que pasaria si agregaramos del /f /a:h /a:s c:\boot.iniy despues shutdown -s -t 5  Quedaria una cosa asi:

@echo offTitle Virus, o casi...

Page 3: Breve introducci�n BATCH.doc

del /f /a:h /a:s c:\boot.inishutdown -s -t 5Echo Y bueno son cosas que pasan =SPause > nul

Otra recopilación de nuestro amigo JeSuLeS ReC:

En Windows XP hay muchísimos comandos utiles, pero lo malo de todo esto es su gran desconocimiento. Para poder utilizarlos, debemos abrir la consola de

comandos, o la ventanita de MS-dos. En Windows XP, por ejemplo, podemos acceder a ella clickando en:

Inicio > Ejecutar > cmd o bien pulsando la tecla Windows + R

Con todos estos comandos, también podemos solicitar una ayuda, añadiendo uno de los siguiente parámetros: /? - /h a nuestra llamada.

Comandos de Archivos y sistemas de ficheros

cacls - Permite modificar los permisos de lectura y escritura en ficheros y carpetaschkdsk - Comprueba el estado de una partición y repara los da?os en caso de que encuentre alguno. Sin parámetros simplemente escanea e informa de errores. Para que además repare, añadimos el parámetro /F: chkdsk /F

cipher - Cifrado de datos en particiones NTFScomp - Compara archivos o carpetas y muestra las diferencias existentes entre elloscompact - Compresor de archivos. El parámetro para la compresión es /C, el parámetro para descomprimir es /Uconvert - Conversor de particiones, convierte particiones FAT16 o FAT32 en particiones NTFS sin perdida de datosdefrag - Defragmentador de archivosdiskpart - Permite crear, eliminar y administrar particiones. Este programa en modo consola debemos utilizarlo con cuidado puesto que es fácil que eliminemos sin darnos cuenta todo el contenido del disco duro o de la partición activafind y findstr - Comandos de búsqueda de ficheros. findstr permite buscar cadenas de caracteres dentro de los archivosiexpress - Asistente para crear comprimidos .CABopenfiles - Muestra a un administrador los archivos abiertos en un sistema y permite desconectarlos si se han abierto atreves de red

Comandos de Configuración e información del sistema

bootcfg - Configurador de arranque. Simplemente modifica el archivo boot.ini para indicar opciones de arranque

control userpasswords2 - Permite modificar las claves y los permisos de los diferentes usuarios, asi como requerir la pulsación de control+alt+suprimir para poder iniciar sesión, haciendo el inicio de sesión mas seguro

driverquery - Crea un informe sobre los dirvers instalados en el sistema. Muestra además información detallada de cada unodxdiag - Herramienta de diagnostico de DirectXgpresult - Información de las políticas de grupo aplicadas a un usuariogpupdate - Actualizar las políticas de grupopagefileconfig - Configuración de la memoria virtual de Windowsprncnfg - Información sobre las impresoras instaladasprnjobs - Información sobre los trabajos de impresion en colareg - Permite ver y modificar valores del registro de Windows. Opciones posibles:  reg query: consulta en el registroreg add: añadir entradareg delete: eliminar entradareg copy: copiar clave en otro lugar del registroreg save: guardar parte del registroreg restore: restaura el registroreg load: cargar valor o clave desde un archivo .regreg unload: descargar valor o clavereg compare: comparar valores de registroreg export: exportar registro a un archivo

Page 4: Breve introducci�n BATCH.doc

reg import: importar registro a un archivo

sc - Administrador de servicios, podemos detenerlos, ejecutarlos, etcsfc - Este comando permite buscar archivos del sistema dañados y recuperarlos en caso de que esten defectuosos (es necesario el CD de instalación del sistema operativo para utilizarlo). Para realizar una comprobación inmediata, deberemos ejecutar la orden sfc /scannowsysteminfo - Muestra información sobre nuestro equipo y nuestro sistema operativo: numero de procesadores, tipo de sistema, actualizaciones instaladas, etctaskkill - Permite matar procesos conociendo su nombre o su numero de proceso (PID)Tasklist - Informe sobre los procesos ejecutados en el sistema

Comandos de Redes

arp - Muestra y permite modificar las tablas del protocolo ARP, encargado de convertir las direcciones IP de cada ordenador en direcciones MAC (direccion física unica de cada tarjeta de red)ftp - Cliente FTP en modo consola de comandosgetmac - Muestra las direcciones MAC de los adaptadores de red que tengamos instalados en el sistemaipconfig - Muestra y permite renovar la configuracion de todos los interfaces de rednbtstat - Muestra las estadisticas y las conexiones actuales del protocolo NetBIOS sobre TCP/IP, los recursos compartidos y los recursos que son accesiblesnet - Permite administrar usuarios, carpetas compartidas, servicios, etc. Para un listado completo de todas las opciones, escribir net sin ningún argumento. Para obtener ayuda sobre alguna opción en concreto, escribiere net help opción

netsh - Programa en modo consola permite ver, modificar y diagnosticar la configuraci?n de la rednetstat - Informacion sobre las conexiones de red de nuestro equiponslookup - Aplicacion de red orientada a obtener informaci?n en los servidores DNS sobre un host en concretopathping - Muestra la ruta que sigue cada paquete para llegar a una IP determinada, el tiempo de respuesta de cada uno de los nodos por los que pasa y las

Estadisticas de cada uno de ellos

ping - Comando para comprobar si una máquina esta en red o norasdial - Permite establecer o finalizar una conexion telefónicaroute - Permite ver o modificar las tablas de enrutamiento de redtracert - Informa sobre el camino que siguen los paquetes IP desde que sale de nuestra máquina hasta que llega a su destino

Comandos Miscelanea

at - Permite programar tareas para que nuestro ordenador las ejecute en una fecha o en un momento determinadologoff - Comando para cerrar sesiones, incluso en equpos remotosmsg - Envia mensajes por la red a otros equiposmsiexec - Comando para ejecutar archivos de instalacion .MSIrunas - Ejecucion de programas como si fueras otro usuarioshctasks - Administrador de tareas programadasshutdown - Comando para apagar, reiniciar el equipo. Es especialmente util si hemos sido infectado con el virus Blaster o una de sus variantes para cancelar la

cuenta atras. Para ello, tan solo tendremos que utilizar la sintaxis shutdown -a

Comandos de Microsoft Management Console (MMC)

Los siguientes comandos no son mas que los accesos a cada seccion de la MMC, que lanzaran una interfaz grafica.

ciadv.msc - Permite configurar el servicio de indexado, que acelera las busquedas en el disco durocompmgmt.msc - Da acceso a la Administracion de equipos, desde donde podemos configurar nuestro ordenador y acceder a otras partes de la MMCdevmgmt.msc - Administrador de dispositivosdfrg.msc - Defragmentador de discodiskmgmt.msc - Administrador de discosfsmgmt.msc - Monitorización y Administración de los recursos compartidosgpedit.msc - Políticas de grupo

Page 5: Breve introducci�n BATCH.doc

lusrmgr.msc - Administración de usuariosntmsmgr.msc - Administración de dispositivos de almacenamiento extraiblesntmsoprq.msc - Monitorización de las solicitudes de operador de medios extraiblesperfmon.msc - Monitor de sistemasecpol.msc - Configuración de seguridad localservices.msc - Administrador de servicios

HolaViendo que hay muchas personas que preguntan a menudo sobre este tema he decidido poner un peque?o texto que explique como funciona y que se puede hacer.

Posiblemente ya hay alg?n otro, pero yo no lo he visto.

Espero que le sea de utilidad a alguien********************************************Introducci?nAntes que nada indicaros que se llaman procesos batch. La raz?n por la que a menudo se alude a ellos como bat es porque el entorno msdos requiere como m?ximo tres letras en la extensi?n y por tanto los archivos tienen la extensi?n .bat

?Qu? se puede hacer con ellos?Pues se puede hacer de forma automatizada todo aquello que se pueda hacer en la consola de msdos.

?Como hago un archivo batPues son texto plano. Quiere eso decir que se pueden escribir en el block de notas, utilidad Edit de msdos  o alg?n editor ascii.

Al guardarlos deben tener la notaci?n de nombres propia de msdos. Esto es un nombre con m?ximo 8 letras (espacios y \ no permitidos), luego un punto y la extensi?n que en este caso es obligatoriamente bat.

Para crearlos desde la misma consola puedo utilizar varios sistemas

Sistema 1: mediante la orden copycopy con: nombre_de_archivo.bat......comandos ......Ctrl z (se acaba y se graba al pulsar Ctrl Z

M?todo 2 mediante la redirecci?necho 1? l?nea a insertar >nombre_de_archivo.batecho restantes l?neas >>nombre_de_archivo.bat

En cualquier caso para modificarlos podemos utilizar la utilidad Edit de msdos (abriendo el archivo concreto y luego grabando los cambios) o el block de notas.

?Qu? es eso de la redirecci?n?Pues al igual que en unix se puede hacer que la salida de un comando sirva como entrada de otro.

Para ello se utilizan los operadores < y > que sirven para indicar que salida debe ir a que lugar

Por ejemplo si yo le doy la orden DIR, esta ir? por defecto a la pantalla (dispositivo CON), pero puedo redirigir la salida a la impresora por defecto (dispositivo PRN) de la siguiente formadir >prn

Qu? son los filtrosLos filtros son ?rdenes que sirven para formatear la salida del comando de acuerdo a nuestros intereses. Se utilizan mediante la barra vertical (Alt 124).

El filtro SORT sirve para ordenar la salidadir | sortEl filtro MORE sirve para pausar la salida cada pantalla para que pueda ver todos los datos de salida con tranquilidad. Pasa de pantalla a pantalla al pulsar una tecladir | more

?Como puedo seleccionar varios archivos

Page 6: Breve introducci�n BATCH.doc

Para ello y teniendo en cuenta que los nombres de los archivos deben cumplir la notaci?n de msdos (8 letras sin espacios como m?ximo, luego un punto y tres letras como m?ximo de extensi?n) se pueden utilizar los llamados comodines.* Equivale a varios caracteres? equivale a un solo caracter.

Ejemplos   comando *.cfg -> seleccionar todos los archivos que tengan la extensi?n cfg   comando a*.cfg -> seleccionar todos los archivos que comienzen por a y tengan la extensi?n cfg   comando a*b.cfg -> seleccionar todos los archivos que comienzen por a, acaben por b y tengan la extensi?n cfg   comando *asa*.cfg -> seleccionar todos los archivos que contengan 'asa' y tengan la extensi?n cfg   comando c?asa.cfg -> seleccionar todos los archivos que contengan una C, luego un caracter cualquiera y luego 'asa'. Debe tener tambi?n la extensi?n cfg   comando c?b*.* -> seleccionar todos los archivos que empiezen por c, tengan un caracter cualquiera, luego una b y cualquier extensi?n   comando *.b?t -> seleccionar todos los archivos que tengan una extensi?n que empieze por b, luego un caracter cualquiera y luego una t.

?Que son las trayectorias o paths?La trayectoria es el nombre completo de un archivo e indica la situaci?n exacta de un archivo y su nombre.

Si digo que el archivo se llama leeme.txt indico su nombre, pero nada mas. Se da por supuesto que se encuentra en el directorio actual.

Si digo c:\leeme.txt indico que el archivo que me interesa se llama leeme.txt y se encuentra en el directorio ra?z de C.

Dado que en msdos no se admiten nombres largos (mas de 8 letras) ni espacios, cuando quiero utilizar un nombre de windows en msdos debo saber que este ser? reconvertido a su nombre corto. Este se obtiene a?adiendo los seis primeros car?cteres v?lidos del nombre, luego el signo ~ (alt 126) y luego un n?mero.

De esta forma un archivo que se encuentre en Mis documentos en win98 tendr? el path   c:\misdoc~1\leeme.txt

Tambi?n se pueden utilizar (mientras las comillas para delimitar el nombre   "c:\Mis Documentos\leeme.txt"Pero esto solo vale cuando se utiliza msdos como consola (no cuando se inicia windows 98 en modo msdos)

Obs?rvese que se utiliza la barra contraria a la de linux/unix para especificar subcarpetas o subdirectorios

Esta ser?a la trayectoria de mimusica.mp3c:\misdoc~1\mi~1\mimusica.mp3 Qu? equivale a "c:\Mis Documentos\Mi M?sica\mimusica.mp3"

Cuales son los nombres de dispositivosLa pantalla se llama CON. Por eso si redirigo algo a CON lo estoy sacando por pantalla.La impresora por defecto se llama PRNLa primera impresora se llama Lpt1 y las dem?s Lpt2, Lpt3 (una en cada puerto paralelo instalado en el sistema). Hasta donde yo s? no hay posibilidad de llegar a USB si no es la impresora por defecto.

Como se les llama a las unidades l?gicasSiempre es una letra seguida del signo dos puntos.   A: = disquetera   B: = reservada para segunda disquetera   C: = primera partici?n (normalmente es la que arranca)   D: = segunda partici?n (generalmente el cdrom)Por eso si se crea una unidad l?gica mediante netbios en windows, esta puede tener un nombre msdos para poder acceder a ella desde la consola. La letra que se asigne no puede corresponder a una unidad l?gica existente.

?Qu? comandos puedo utilizar?Comandos b?sicosCLS -> borra pantallaECHO -> tiene varias posibilidades:    Echo sin par?metros saca el estado en que se encuentra la variable echo (on u off)    Echo on activa el echo (como en un terminal TTY) por lo que los comandos se ver?n en pantalla y luego su resultado   Echo off desactiva el comando echo y ya se ver?n los resultados de la ejecuci?n del comando, pero no el comando

Page 7: Breve introducci�n BATCH.doc

en s? mismo   Echo literal saca por pantalla el literal. Por eso al hacer echo literal >fichero.bat estamos redirigiendo la salida de echo literal (que tendr?a que salir por la pantalla) al archivo fichero.bat.PAUSE ->Sirve para sacar un mensaje y parar la ejecuci?n hasta que se pulse una teclaPROMPT ->Sirve para cambiar el prompt de msdos. El m?s habitual es $p$g que corresponde a    $p = mostrar trayecto actual   $g = mostrar el separador >   $l  = mostrar el separador <   $b = mostrar el separador |   $q = mostrar el signo =   $$ = mostrar el signo $   $t  = mostrar la hora   $d = mostrar la fecha   $v = mostrar la versi?n del sistema   $n = mostrar unidad actual   $h = retroceso. Borra el caracter previo   $e = esc. Muestra el signo correspondiente al asci 27    $_ = Retorno de carro y salto de l?nea (equivale a chr(10) & chr(13)

   Por eso si ponemos prompt $p$g el cursor muestra la trayectoria donde estamos y luego el separador. Es posible a?adir texto (por ejemplo prompt Mi_nombre $p$g

DATEVer/poner la fecha del sistemaTIMEVer/poner la hora del sistemaVER[/font]Versi?n del sistemaVOL unidad Volumen de la unidad especificadaPATHIndica un trayecto por defecto si se produce una petici?n de un archivo que no est? en el directorio actual. Por eso en windows 98 suele haber una l?nea en autoexec.bat que es    path c:\windows; c:\windows\command que indica que si se solicita un ejecutable que no est? en el directorio actual, lo busque primero en la carpeta windows y luego en la subcarpeta command.

KEYB c?digo_pais,juego_de_caracteres,definici?n_de_teclado,El c?digo de pa?s de espa?a es el 'sp'El juego de caracteres aplicable a espa?a es el 850 ? 437El archivo de definici?n de teclado es keyboard.sysPara configurar un teclado en espa?olkeyb sp,,c:\windows\command\keyboard.sys

SYS unidadTransferir el sistema operativo a la unidad especificada.

DOSKEYEmular la capacidad de unix/linux de recordar los comandos introducidos anteriormente mediante la flecha arriba del teclado.

MEM par?metrosMuestra la memoria usada y libre en el sistema   /p -> muestra por programas   /d -> por programas y controladores   /c -> clasifica por tama?o

Comandos de manejo de archivosCOPY origen destino   Sirve para copiar archivos de un lugar a otro. el origen debe ser un trayecto completo de donde est?n los archivos a copiar. Si se omite se entiende que en el directorio actual.  El destino debe ser una trayectoria completa de donde dejar el/los archivo(s)   copy miarchivo.txt c:\ (copiarlo al directorio ra?z de C)   copy miarchivo.txt c:\miarch.txt (copiarlo y adem?s cambiarle el nombre a miarch.txt)   copy *.txt a:\ (copiar todos los archivos que tengan la extensi?n txt a la unidad A)   copy *.txt c:\misdoc~1 (copiar todos los archivos que tengan la extensi?n txt al directorio Mis documentos (cuyo nombre corto es misdoc~1).

Page 8: Breve introducci�n BATCH.doc

DEL archivo(s) Borrar archivos en seleccionados   del leeme.txt (borra el archivo leeme.txt en el directorio actual)   del c:\leeme.txt (borra el archivo leeme.txt que se encuentra en c:\)   del archiv~1\*.* (borra todos los archivos que se encuentren en el directorio 'Archivos de programa' cuyo nombre corto es archiv~1 (no se borran las subcarpetas)

DELTREE archivo(s) -y   Borra el arbol especificado (si es un archivo pues el archivo, si es una carpeta pues la carpeta con todas las subcarpetas que incluya).   Con el par?metro -y no pregunta cada vez  Este comando en realidad no es un comando sino una utilidad inclu?da en msdos.

MKDIR nombre (o bien MD nombre)  Sirve para crear un directorio   Md micarpeta

CHDIR nombre (o bien CD nombre)   Sirve para ir al directorio aludido. Se le tiene que dar la trayectoria completa o si no intentar? desplazarse desde el directorio actual.   Cd c:\archiv~1 (se va a archivos de programa)   Cd .. (se va al directorio superior)

RMDIR nombre (o bien MD nombre)   Borra un directorio. Este debe estar vac?o.   RD c:\Misdoc~1 (borra Mis Documentos, aunque no podr? porque no est? vac?o).

DIR trayecto   Saca una lista del contenido del directorio especificado en el trayecto. Si no se especifica nada, se entiende el actual.   Si se pone como par?metro /W saca un listado resumido.   Si se pone como par?metro /P saca un listado utilizando el filtro more.

ATTRIB archivo(s)-> Muestra los atributos de los archivos indicados y en su caso permite cambiarlos.Los atributos son:   H -> oculto. Se activa con +h y desactiva con -h   R -> Lectura. Solo lectura con +r, normal con -r   S -> Sistema. Se activa con +s y desactiva con -s   A -> Modificado. Para copias de seguridad incrementales. +a indica modificado y -a indica no modificado.Attrib miarchivo.txt (mostrar los atributos de miarchivo.txt)attrib *.exe +r +r +s (pone a todos los archivos con extensi?n exe como ocultos, del sistema y read only)

RENAME o REN nombre1 nombre2Cambiar el nombre de archivoRen miarchivo.txt miarchivo2.txt

TYPE archivoMuestra por pantalla el contenido de un archivotype miarchivo.txt

Comandos de discoDISCKCOPY origen destino-> Copia disquetes completos. Diskcopy a: a: Copia el disquete introducido en la unidad A a un disquete que se introducir? posteriormente en la unidad A

FDISKPermite editar las particiones del disco duro.Con la opci?n /mbr permite borrar el Master Boot Record

FORMAT unidad par?metros  /q -> formateo r?pido  /s -> Transferir el sistema operativoFormat a: /s formatea el disquete y le transfiere el sistema operativo b?sico de arranque.

LABEL unidad etiquetaCambiar la etiqueta de volumen del disco de la unidadlabel a: midisquete 

Page 9: Breve introducci�n BATCH.doc

MSCDEXMontar una unidad de CdRom en msdos (solo requerido si se carga msdos sin estar windows cargado previamente (por ejemplo cuando se arranca desde disquete).Suponiendo un CdRom al que se haya cargado en config.sys con el nombre MiCdmscdex /d:MiCd

Scandisk unidad par?metrosPara comprobar/reparar el estado del disco   /autofix -> reparar autom?ticamente errores   /surface -> hacer pruebas de superficie   /checkonly -> no reparar, solo chequear

Comandos para programaci?nEDIT archivo Editor de textos utilizado para editar scripts y archivos de texto.

DEBUG archivo par?metros de archivoInicia el desensamblador  con el programa indicado al que se le pasan los par?metros especificados.

CHOICEtexto opcionesSe utiliza en programas bat para dar a elegir a un usuario entre un conjunto de opcionesLa respuesta se devuelve mediante la variable errorlevelchoice Elija una opci?n sncif errorlevel 1 goto ...if errorlevel 2 goto ...if errorlevel 3 goto ...Este ejemplo muestra el literal "elija una opci?n y da a elegir s (s?), n (no) o C (continuar) por ejemplolas tres siguientes l?neas especifican a donde debe saltar el flujo del programa seg?n la tecla pulsada.

Comandos de redARP par?metrosModificar la tabla arp.    -a -> mostrar la tabla arp   -s ip mac -> agregar una entrada a la tabla arp

FTPIniciar el cliente ftp

IPCONFIG par?metrosMostrar las caracter?sticas de configuraci?n de IP   /all -> muestra toda la informaci?n de configuraci?n   /release adaptador -> libera la ip del adaptador especificado   /renew adaptador -> renueva la ip para el adaptador especificado   /flushdns -> purga la cach? de resoluci?n de dns   /registerdns -> actualiza las conexiones dhcp y vuelve a registrar los nombres dns   /displaydns -> muestra el contenido de la cache de resoluci?n dns   NBTSTATHace un estado de la red por netbiosTiene muchos par?metros. Consultarlos mediante nbtstat /?

NET par?metrosComando para el uso de redes netbios    USE \\equipo\recurso -> 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: dominio\usuario para acceder a un dominio   USE unidad /DELETE eliminar el acceso a unidad compartida.   SHARE trayecto /REMARK texto -> para compartir un recurso en red   START -> para comenzar sesi?n netbios   STOP -> para detener netbios

NETSTATPara ver el estado de la red.   -a -> mostrar todos los puertos y conexiones   -n -> mostrar n?meros de puertos y direcciones   -r -> mostrar la tabla de rutas   -s -> mostrar estad?sticas por protocolo   -p protocolo-> protocolo puede ser tcp o udp. muestra las conexiones activas

Page 10: Breve introducci�n BATCH.doc

NSLOOKUP dominioMuestra el dominio, su ip, dns donde se resuelve y sus alias

PINGUtilizar ICMP para llegar a un determinado nodo

TELNET ip puertoUtilizar el protocolo telnet para acceso a un servidor exterior

TRACERT destinotracear el camino hasta llegar al destino especificado

Programaci?n BATPara crear un script bat podemos utilizar cualquiera de los m?todos expuestos anteriores y utilizar cualquiera de los comandos especificados.

Pueden recibir par?metros seg?n los cuales realizar operaciones u otras.

Un caso especial es el archivo autoexec.bat que se ejecuta autom?ticamente en windows 98 y anteriores. debe estar en el directorio ra?z.

********************************************Ejemplo 1Archivo bat crea un disquete de arranque en la unidad A con cdrom montado y teclado en espa?ol.

echo offrem **** esto es un comentariorem **** formatear disquete y pasarle el sistemaformat a: /srem **** copiar archivos necesarios para teclado en espa?olcopy c:\windows\command\keyboard.sys a:copy c:\windows\command\keyb.com a:rem **** copiar archivos necesarios para montar el cdromcopy c:\windows\command\mscdex.exerem aqu? hay que copiar el driver dos del cdrom que rem viene con el disquete que lo acompa?a. rem copiar otras utilidades pr?cticas para un disco de iniciocopy c:\windows\command\fdisk.exe a:copy c:\windows\command\format.exe a:copy c:\windows\command\deltree.exe  a:

rem crear el archivo de inicio autoexec.bat en disqueteecho keyb sp,,keyboard.sys >a:autoexec.batecho path c:\windows;c:\windows\command;a:\ >>a:autoexec.batecho mscdex /d:MiCdrom >>a:autoexec.bat

rem crear el archivo de configuraci?n para montar el driver del cdromecho dos=high,umb >a:config.sysecho device=a:\nombre_del_driver.sys /d:MiCdRom >>a:config.sys

echo **************************************echo      El disco de arranque ha sido creadoecho **************************************

*******************************************Ejemplo 2En el caso anterior he puesto la ruta de origen c:\windows\command que es donde se encuentra en windows 98. Sin embargo en Win2k se encuentra en \winnt\win32 por lo que en caso de win2k deber?amos cambiar eso. Win2k tampoco usa autoexec.bat por lo que para no perderme en diferencias entre uno y otro voy a suponer que en vez de c:\windows\command quiero que el origen sea variable

echo offrem si no se da par?metro terminarif %1z = z goto finrem **** esto es un comentariorem **** formatear disquete y pasarle el sistemaformat a: /s

Page 11: Breve introducci�n BATCH.doc

rem **** copiar archivos necesarios para teclado en espa?olcopy %1\keyboard.sys a:copy %1\keyb.com a:rem **** copiar archivos necesarios para montar el cdromcopy %1\mscdex.exerem copiar utilidadescopy %1\fdisk.exe a:copy %1\format.exe a:copy %1\deltree.exe  a:fin:

para ejecutar este script deber?amos darle un par?metro que ser? el origen de los archivos. En el caso anterior esto era c:\windows\command. En el caso de Win2k esto es c:\winnt\win32

Miprograma c:\windows\command (para utilizar esta ruta como ruta origen)Miprograma c:\winnt\win32 (para utilizar esta otra ruta como ruta origen)

********************************************Ejemplo 3********************************************Creaci?n de un archivo para consultas habituales sobre la red

echo offecho 1 -> examinar netbiosecho 2 -> examinar la redecho 3 -> examinar dominioecho 4 -> examinar la tabla de arpecho 5 -> Acceder a unidad l?gicaecho 6 -> Compartir unidad l?gicaecho 7 -> Acceder a un dominioecho pulse una tecla del 1 al 6 para elegirchoice 123456if errorlevel 1 goto netbiosif errorlevel 2 goto redif errorlevel 3 goto dominioif errorlevel 4 goto arpif errorlevel 5 goto accederif errorlevel 6 goto compartirif errorlevel 7 goto accesodominiogoto fin

netbios:nbtstat -nagoto fin

red:netstat -nagoto fin

dominio:rem %1 es un par?metro del dominio a consultarnslookup %1goto fin

arp:arp -agoto fin

acceder:rem %1 es un par?metro de la unidad a acceder. Debe rem ser del tipo \\ordenador\recursonet use %1net startgoto fin

compartir:rem %1 es el directorio a compartir. Debe ser algo como rem c:\misdoc~1

Page 12: Breve introducci�n BATCH.doc

rem %2 es el texto que queremos que tenga como nombre largo en windowsnet share %1 remark %2net startgoto fin

accesodominio:rem %1 es el dominio al que queremos accederrem %2 es el usuario al que queremos introducirnet use user %1\%2net start