Alfredo

Páginas: 18 (4282 palabras) Publicado: 6 de junio de 2013
Programación en lenguaje batch de DOS
INTRODUCCION
Muchos piensan que los ficheros batch no sirven mas que para indicar al DOS que programas debe cargar al arrancar. Un vistazo al manual del DOS, o a la ayuda del DOS nos muestra un lenguaje muy limitado, sin variables numéricas, ni tratamiento de cadenas, ni ningún tipo de estructuración. El manual no da mas que unas mínimas explicaciones paraque el usuario pueda modificar, si es necesario su AUTOEXEC.BAT, y poca cosa mas.
Yo me quedé muy sorprendido de encontrar en el grupo de noticias alt.msdos.batch expertos capaces de hacer cosas inverosímiles. Incluso hay quien tiene una página web en que se explica paso a paso el desarrollo de un "maligno" virus en lenguaje batch, capaz de infectar a todos los batch de un PC (a nivel decreación artística, por supuesto, como él mismo dice).
Algunos trucos son realmente útiles, como el que permite salvar el directorio actual(Push_pop), y después volver a él. O el que, puesto en el autoexec.bat, permite ejecutar un programa sólo si es -por ejemplo- Viernes.
Todo ello es posible apurando las instrucciones del DOS hasta el límite, y gracias a la experiencia compartida en la red por milesde usuarios. Esta página es un palido reflejo de las de los autenticos gurus de la programación batch. Sólo intenta acercar estos trucos a aquellos para los que la lengua inglesa constituye un problema.
Algunos dirán para qué tanta complicación, si existen soluciones alternativas:
 Sustitutos del command.com como el NDOS o el 4DOS: Son muy útiles, pero recordad que más de un programa DOS (¡¡yWindows!!) ejecuta de cuando en cuando una orden de DOS en un SHELL. Al tener algunas órdenes de estos sustitutos el formato de salida y las opciones distintas, el programa puede fallar. Es indispensable probar todos los programas cuando se instale uno de estos substitutos.
 Programas externos extensores del DOS. Ok, solo es necesario encontrar el programa necesario. Solo hay que irse a Simtel osimilar y empezar a buscar. Hay miles de ellos, cada uno cubre una necesidad puntual. Es necesario no abusar, pues podemos terminar con un sistema DOS tan recargado de ficheros como el W95
 Programar en QBasic, que viene gratuito con el Windows. El Qbasic tiene mas de 250 ordenes, es un lenguaje que tiene su aprendizaje. Una vez completado éste, podemos encontrarnos sorpresas como que para copiar unfichero, o para cambiar de disco lo mas facil es hacer un SHELL y ejecutar una orden DOS. Eso si, tenemos tratamiento de cadenas y operaciones matemáticas.
 En Windows tenemos el Visual Basic para Aplicaciones, para ejecutarlo solo debemos tener abierta de las aplicaciones de Microsoft Office y aprendernos un lenguaje extensísimo, con una jererquía de objetos enorme.
 Java, VBScript, etc sonlenguajes que se ejecutan en el navegador de Internet, pero que por necesidades de seguridad no contienen ninguna instrucción que pueda afectar al sistema de ficheros de nuestro ordenador, es decir no son capaces de instalar programas, copiar ficheros, modificar registros, etc.
Bien, lo que sigue es un cajon de sastre con trucos,etc. Recomiendo a todos leerse antes el manual del DOS, para repasarlos rudimentos del invento

INDICE
Trucos para Depuración
Documentacion
Secuencia de Ejecucion
Entradas de Usuario
Cadenas Alfanumericas
Consideraciones para Windows
Discos y Directorios
Fecha, Hora, Temporizado
Contaje, Numeros
Ordenes del DOS

TRUCOS PARA DEPURACION
-Echo selectivo: Iniciar el programa con @echo %debug% off .Antes de ejecutar en debug, hacer set debug=ON
-Ejecutarpaso a paso command /y /c bat_a_probar parametros. Command pide confirmacionantes de cada paso
-poner %breakp% cada un cierto trozo. Al probar programa SET breakp=pause
Davis utiliza unos ficheros para debug 

DOCUMENTACION
Para conseguir que un batch haga cosas útiles hay que complicarse mucho la vida, a pesar de que un batch raramente pasará de las 30 lineas, es facil olvidar que en que...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Alfredo
  • alfred
  • Alfred
  • Alfredo
  • Alfredo
  • Alfred
  • Alfredo
  • alfredo

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS