Professional Documents
Culture Documents
Bueno, como este es el primer lenguaje de programacin que he medianamente aprendido, no he profundizado an y no soy un experto he decidido compartir lo que ya se de la forma que me gustara haberlo encontrado, tuve suerte de tener gente que me ayud bastante, pero aprend leyendo y probando cdigos en mi !" #spero que encuentres entendible este curso" $racias por leerlo" %i te piyas una versin no completa perdona, terminar& este tutorial lo m's completo posible pero tengo vida personal y no puedo dedicarle el ())* Captulo 1 Batch #l batch es un leguaje de programacin que copi +indo,s del bash -bourne again shell, Bourne es el apellido del que lo cre, el mismo que creo el bsh, posteriormente a.adi&ndole la a/ de este lenguaje de programacin vienen los archivos "bat -pueden ser "cmd a partir de +indo,s 0)))/ a los que el mismo +indo,s no deja tener una extensin de m's de 1 caracteres, un "bat no debera de tener m's de 2 letras en entorno 3%456% por lo que sera sustituido por las 7 primeras letras y el smbolo 8 -9lt : (07/" Bueno como ya hemos dicho, tras copiar del bash +indo,s lo adapt a su sistema operativo monousuario -3%456%/ y con el tiempo a tenido que cambiarlo debido a lo malo que era" !omo es uno de los lenguajes m's limitados donde los haya -o eso dicen/ muchos optan por no estudiarlos pero los "bat tienen un poder que no todos los lenguajes tienen" %eguimos con un poco m's de historia 9hora el batch a quedado reducido en la consola de +indo,s -shell de sistema/ y es complementario al sistema operativo, no como en los dem's %istemas 6perativos" ;n bat no suele ser detectado por los antivirus -a mi nunca me detectarn ninguno y prob& m's de uno, pero dicen por ah que lo detectan, as que no me ensucio las manos/ un batch no es un proceso en s por lo que es difcil bloquear alguna parte de su actividad y otra buena caracterstica de los batch es su rapidez, en 1 segundos puedes reventar un +indo,s si te excedes, con un batch se puede hacer todo lo que quieras de forma automatizada, es decir si quieres borrar una carpeta determinada de tu ! puedes hacer un batch que lo haga por ti y slo con darle un clic la tienes borrado, este sistema es muy bueno para programarte tus acciones ya que puedes tambien programar el tiempo y dem's" 9 lo largo de este curso comprender's muchas utilidades del mismo" Captulo 2 - Cmo se crea un programa .bat? <a forma que m's me gusta de crear un programa "bat es desde el bloc de notas pero puedes usar cualquier editor de texto plano -nada de usar el +ord para esto = ni ningn programa de edicin de texto enriquecido, es decir donde puedas darle color, efectos y dem's al texto/ Nos vamos a basar en este mtodo en el tutorial" <os puedes crear desde la misma shell de sistema, si an no sabes abrir la shell de sistema ve a inicio, accesorios, smbolo del sistema o pon en el men ejecutar !35, te aconsejo que te hagas un acceso directo cerca y practiques mucho navegando por tu ! mediante la consola" >e aconsejo un acceso directo en tu escritorio o algo as Nota: !mo el ?)* de las personas que usan +indo,s usan ya las versiones @ o por lo menos si usa un 3#A?2 sabr' manejar seguramente las versiones de @ me voy a orientar en que tenemos este sistema a la hora de poner los ejemplos, ya sab&is que el 'rbol de direcciones es distinto al de versiones inferiores"
Bueno, se crean de la siguiente maneraB ;na vez est& el cdigo fuente escrito, le damos a 9rchivo = $uardar como y ponemos el nombre entre comillas "bat, es decirB
Bien ya sabes lo esencial, espero que te sea cmodo el tutorial, ya sabes por eso de las im'genes y explicaciones exhaustivas, lo intento hacer para alguien al que la inform'tica no se le de bien, o mejor dicho, no sepa nada de &sta por lo que explico todo paso a paso, aunque hay cosas de las que se debera saber el porqu&" Co me limito a dar
Coman!os b.s"cos !e consola (" !ls -Borrar pantalla/ 0" #cho -#co en pantalla/ %in par'metros te indica si est' activado o desactivado" #cho on activa el echo" -!omandos y resultados se repiten en pantalla/ #cho off desactiva el echo -!omandos ocultos y resultados visibles/ #cho literal saca por pantalla el literal 1" ause - ara la actividad del programa hasta que es pulsada una tecla, muy til a la hora de programar algo/ T" rompt -3odifica el smbolo de sistema/ #n el smbolo del sistema se pueden escribir caracteres normales y lo siguientes cdigos especialesB `" 7" \" 2" Y9 YB Y! Y5 Y# Y[ Y$ Y] Y< YH Y YD Y% Y> YN Y_ YY Z -%mbolo de unin/ V -barra vertical/ - - ar&ntesis izquierdo/ [echa actual !digo de escape -cdigo 9%!FF 0\/ / - ar&ntesis derecho/ K -signo mayor que/ Eetroceso -elimina el car'cter previo/ S -signo menor que/ ;nidad actual ;nidad y ruta de acceso actual ^ -signo igual/ -espacio/ ]ora actual Nersin de +indo,s @ Eetorno de carro y alimentacin de lnea Y -signo del dlar/
5ate -%irve para ver o cambiar la fecha del sistema/ >ime -%irve para ver o cambiar la hora del sistema/ Ner -%ireve para ver la versin del sistema operativo/ Nol -%irve para ver el volumen de una unidad/ %e le tiene que a.adir la unidad detr's - !B , 5B , #B , 9B / ?" ath -#stablece una ruta especificada como trayecto/ !omo ya sabemos que es un trayecto y dem's deb&is saber que con este comando a.adi&ndole la ruta detr's -entre comillas si contiene algn espacio/ obtendremos un nuevo path que podremos consultar tecleando path en la consola" ()" aeyb -!onfiguracin de teclado/
1" T"
`"
7" \"
2" Eename o Een -Eenombrar nombre de archivo/ ?" >ype -muestra un fichero "txt, admite la redireccin/ ()" 9t -programa las acciones a un da y tiempo determinados/ %u sintaxisB at (`B`) Anext 3 start cBA"""blablabla"bla para utilizar los par'metros Aevery y Anext sustituir con abreviaturas los dasB 3, >, +, >h, [, %, %u y para los das del mes con nmerosB del ( al 1( #xplicacin sacada de el foro de el4hacMer"com"ar hecha por alejo(T Coman!os !e !"sco (" 5isMcopy -!opia un disquete de una unidad a otra/ %u sintaxisB 5isMcopy unidaddeorigenB unidaddedestinoB disMcopy aB bB copia un disquete de unidad 9B a la unidad BB 0" [disM -]erramienta que gestiona las particiones del disco/ !on el par'metro Ambr se puede borrar el mbr -3aster Boot Eecord/ de un disco" 1" [ormat -5a formato a un disco/ %u sintaxisB
0" 9rp -3uestra y modifica las tablas de conversin de direcciones F en direcciones fsicas que utiliza el protocolo de resolucin de direcciones -9E // %u uso es el siguienteB 9E 4s inet_addr eth_addr bif_addrc 9E 4d inet_addr bif_addrc 9E 4a binet_addrc b4H if_addrc ide los datos de protocolo actuales y muestra las entradas 9E actuales" %i se especifica inet_addr, slo se muestran las direcciones F y fsica del equipo especificado" %i existe m's de una interfaz de red que utilice 9E , se muestran las entradas de cada tabla 9E " 4g Fgual que 4a" inet_addr #specifica una direccin de Fnternet" 4H if_addr 3uestra las entradas 9E para la interfaz de red especificada por if_addr" 4d #limina el host especificado por inet_addr" inet_addr puede incluir el car'cter comodn W -asterisco/ para eliminar todos los hosts" 4s 9grega el host y asocia la direccin de Fnternet inet_addr con la direccin fsica eth_addr" <a direccin fsica se indica como 7 bytes en formato hexadecimal, separados por guiones" <a entrada es permanente" eth_addr #specifica una direccin fsica" if_addr %i est' presente, especifica la direccin de Fnternet de la interfaz para la que se debe modificar la tabla de conversin de direcciones" %i no est' presente, se utilizar' la primera interfaz aplicable" #jemploB K arp 4s (`\"``"2`"0(0 ))4aa4))4704c74)? """" 9grega una entrada est'tica K arp 4a """" 3uestra la tabla arp" 4a
?" >elnet -Fnicia una sesin de telnet al host impuesto/ %us opciones sonB telnet host puerto -%i el puerto se omite se sobreentiende el 01/ ()" >racert ->racea el destino hasta el punto determinado/ Coman!os !e programac"n ((" #dit -: nombre de archivo, abre un editor de textos similar a el bloc de notas pero en entorno ms4dos/ (0" 5ebug -ejecuta el desensamblador con el programa indicado/ (1" !hoice - ara dar a elegir opciones, se conjunta con iferrorlevel/ #ste lo entenderemos r'pidamente con los ejemplos" (T" Ff -!omo no, el condicional por excelencia" Eealiza el procesamiento condicional de los programas por lotes"/ 4 F[ bH6>c #EE6E<#N#< nmero comando 4 F[ bH6>c cadena(^^cadena0 comando 4 F[ bH6>c #@F%> archivo comando 4 H6> #specifica que +indo,s @ debe llevar a cabo el comando slo si la condicin es falsa"
4 #EE6E<#N#< nmero #specifica una condicin verdadera si el ltimo programa que se ejecut devolvi un cdigo de salida igual o mayor que el nmero especificado"
<a cl'usula #<%# debe aparecer en la misma lnea que la del comando que sigue al F[ or ejemploB F[ #@F%> archivo" del archivo" / #<%# echo archivo" no existente" / <o siguiente H6 funciona porque el comando 5#< debe terminarse con una nueva lneaB F[ #@F%> archivo del archivo" #<%# echo archivo no existente >ampoco funcionar lo siguiente, ya que el comando #<%# debe estar en la misma lnea del comando F[B F[ #@F%> archivo" del archivo" #<%# echo archivo" no existente %i desea tenerlo todo en una misma lnea, lo siguiente funcionaraB F[ #@F%> archivo -del archivo/ #<%# echo archivo no existente %i los comandos de extensin est'n habilitados F[ cambia asB F[ bAFc cadena( op4de4comparacin cadena0 comando F[ !35#@>N#E%F6H nmero comando F[ 5#[FH#5 variable comando 5onde op4de4comparacin puede serB #D; 4 igual H#D 4 no igual <%% 4 menor que <#D 4 menor que o igual $>E 4 mayor que
%upongo que hay muchas m's, pero de momento no recuerdo m's, slo busquen una lista en Fnternet, pero de todos modos aqu seguro est'n las m's importantes, si se fijan hay algunas que sirven m's que otras"" Captulo 6 't"7uetas / 8oto <as etiquetas son palabras a las que se puede accedes m's adelante mediante un salto de lnea -goto/, deben empezar por el doble punto -JBL/ '3emplo if *os* ^^ +innt goto ,innt 9qu van las rdenes que se ejecutan si no es un +indo,s Ht goto fin B,innt 9qu van las rdenes que se ejecutan si es un +in Ht Bfin #xplicoB %i tu sist"operativo es ,innt va hacia B,innte y ejecuta las ordenes antes de salir, si no lo es sigue sin hacer nada pues no es un ,innt hasta llegar a la lnea goto fin, de la cual salta hacia la etiqueta Bfin y se sale del programa" #n resumen el goto te lleva a la palabra que viene detr's si est' definida como etiqueta" Captulo 9 &eg"stro: 3ediante el comando reg puedes modificar a tu antojo el registro, es muy til si sabes lo que est's haciendo, si no sabes usar el registro no pruebes a el azar, por aqu aprender's algunos usos que puedes darle al registro, te dejo como se usa y algunos ejemplos m's abajo" ># E# F>6 D;# #< E#$F%>E6 H6 #% ;H9 !6%9 !6H <9 D;# %# ;#5# d;$9E >E9HD;F<93#H>#" ronto redactar& una introduccin al registro de +indo,s y ensamblar& aqu el enlace" %u sintaxis esB . Eeg opcin par'metro <as opciones y par'metros sonB !lave ^ UUequipoUUlclave hsi se omite equipo se usa el equipo local" #n equipos remotos solo disponibles ]a<3 y ]a; Av ^ consulta para una clave de registro especfica Ave ^ consulta el valor predeterminado As ^ consultar todos los valoresAsubclaves %9N# %9N# clave archivo hguarda en un archivo un arbol del registro" !lave^!laveEaizUU%ub!lave !laveEaiz^]a<3, ]a!;, ]a!E, ]a;, ]a!! %ub!lave^nombre completo de la subclave 9rchivo ^ Hombre del archivo para guardar
"nal 9gradezco a los usuarios del foro ,,,"el4hacMer"com"ar por ayudarme a aprender con magnficos ejemplos y explicaciones, a todos vosotros por leerlo, y bueno, a todo aquel que tenga la necesidad de ense.ar y aprender como yo y muchas personas que vagamos por la red siempre que podemos" $racias a todos" Duisiera disculparme por una cosa, y es que como en este mundo hay de todo, yo aprend lo que s& con ` documentos distintos que tengo en mi c, y lo que saque de la consola de 3%45os, aparte de examinar programas y por supuesto E#$;H>9E <9% 5;59%" 3e bas& en el orden de un tutorial para explicar los comandos e inclus me ayud& de algunas explicaciones de algunos de &stos, pero no lo copi&, lo digo porque llevo varios das redactando este tutorial y no quiero que se infravalore mi trabajo" Eespondo a la sarc'stica pregunta de que por qu& me bas& en el orden de otro tutorial, pues porque no quera que se me pasaran muchas cosas, pronto retomar& este documento y lo actualizar& segn las crticas que reciba, los ejemplos y ayudas que me manden, etc" or supuesto si me mandan algo respetar& su nombre y lo pondr&, no me quedar& con vuestro honor, si me permiten me despido hasta el proximo tutorial, que espero que sea mejor que este y bueno, siempre vayamos mejorando"
"