PDF de programación - Curso Batch

Imágen de pdf Curso Batch

Curso Batchgráfica de visualizaciones

Publicado el 18 de Abril del 2021
909 visualizaciones desde el 18 de Abril del 2021
120,4 KB
18 paginas
Creado hace 8a (14/04/2016)
1. Introducción
Las siglas BAT características de los guiones en entorno MSDOS provienen del hecho
de que son procesos BATCH. En Msdos los nombres de los archivos podían tener hasta
8 letras para el nombre y tres letras para la extensión. Dado que solo se disponía de tres
letras para identificar la clase de archivo se optó por poner BAT (aunque a partir de
Windows 2000 también se puede usar CMD).

Los proceso batch son nativos de MVS/DOS y VSE/DOS que suelen funcionar con
JCL. RPG es un lenguaje basado íntegramente en la metodología batch.

Desde entonces cada sistema operativo que ha salido ha incluído un sistema de
scripting. Los grandes sistemas se quedaron con JCL/JOBS mientras que la aparición de
UNIX, MINIX y demás empezaron a utilizar una shell diferente y mas interactiva con
un espacio de consola para los usuarios y un lenguaje apropiado para administrar la
estación (esto no era necesario en MVS o VSE porque el usuario actuaba sobre pantallas
tontas 3270) Se llamó shell y se conoce habitualmente como sh. Posteriormente salieron
otras entre las cuales está bourne shell again conocida como bash.

Microsoft hizo una para su sistema operativo que copió descaradamente de bash.
Invirtió la barra para identificar el path correcto a un archivo y adaptó el lenguaje a un
sistema operativo monousuario e incapaz de trabajar en red. Este es el lenguaje BAT.
Con los años microsoft se ha visto obligado a modificarlo considerablemente (sobre
todo los comandos de entorno de red) dadas las muchas limitaciones que tenía. Aún hoy
es increíblemente pobre en comparación con las de otros sistemas operativos. El
lenguaje bat es un complemento en windows y no una parte fundamental como en los
demás.

2. ¿Qué se puede hacer con ellos?
Pues se puede hacer de forma automatizada todo aquello que se pueda hacer en la
consola de msdos. Se pueden ejecutar programas, enviar y recibir parámetros y
automatizar tareas

3. Creación de un programa.BAT

Pues 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 compatibilidad con todas las versiones
windows) o CMD (a partir de Windows 2000).

Para crearlos desde la misma consola puedo utilizar varios sistemas

Mediante la orden COPY

copy con: nombre_de_archivo.bat

Orden de creación de archivo con el nombre
'nombre_de_archivo.bat'

...
...
comandos
...
...
Ctrl + Z



órdenes a ejecutar


Fin y grabación del archivo en el directorio
actual


Método 2 mediante la redirección

echo 1º línea a insertar
>nombre_de_archivo.bat
echo restantes líneas
>>nombre_de_archivo.bat
echo restantes líneas
>>nombre_de_archivo.bat

Se graba el fichero 'nombre_de_archivo.bat con
la primera orden a ejecutar
Se añade la segunda orden

Se añade la tercera orden ...

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.

4. Redirección de entrada/salida

Pues al igual que en unix se puede hacer que la salida de un comando sirva como
entrada de otro. Cada proceso tiene ya predeterminados sus dispositivos de entrada y
salida. Mediante la redirección podemos cambiar eso.

DISPOSITIVO
CON
PRN
LPT1
COM1
COM2

SALIDA
Salida por la pantalla
Salida por la impresora por defecto
Salida por la 1º impresora en paralelo
Salida por el primer puerto serie
Salida por el segundo puerto serie

Así, si ejecuto la orden 'dir' la orden saldrá en su dispositivo por defecto (CON) y veré
el resultado por pantalla

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

Por ejemplo si yo quiero redireccionar la salida estandar de dir para que en vez de ir a la
pantalla vaya a la impresora haré

dir >prn



Con lo que la salida natural del comando DIR en vez de ir a su sitio natural (la pantalla)
irá a la impresora por defecto.

5. Filtros

Los 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 salida

DIR | SORT



El 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 tecla.

DIR | MORE



6. Máscaras y comodines
Para seleccionar varios archivos a la hora de realizar una determinada operación existe
la posibilidad de utilizar máscaras. Estas máscaras utilizan los caracteres comodines
para describir que archivos deben verse afectados. 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

extensión cfg

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

c?b*.*

*.b?t

7. Trayectos (paths)

La trayectoria es el nombre completo de un archivo e indica la situación exacta de un
archivo y su nombre.

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

leeme.txt
c:\leeme.txtel 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

Y en Windows 2000/XP

c:\Docume~1\Usuario\misdoc~1\leeme.txt

También se pueden utilizar (mientras las comillas para delimitar el nombre

"c:\Mis Documentos\leeme.txt"

Esta sería la trayectoria de mimusica.mp3 (en Mis Documentos en Win 98)

c:\misdoc~1\mi~1\mimusica.mp3
Qué equivale a
"c:\Mis Documentos\Mi Música\mimusica.mp3"



8. Unidades Lógicas
Siempre 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.

9. Comandos MSDOS

Los comandos en msdos tienen las siguientes características:

a) el formato general es COMANDO [OPCIONES] [ARGUMENTOS]

b) Da igual que se usen mayúsculas o minúsculas

c) Los argumentos y opciones se separan por espacios

9.1 Comandos básicos de consola

9.1.1 CLS

Borra la pantalla

9.1.2 Echo [parámetros]

Tiene varias posibilidades:

off)

 ECHO sin parámetros saca el estado en que se encuentra la variable echo (on u

 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 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.

9.1.3 Pause [mensaje]

Sirve para sacar un mensaje y parar la ejecución hasta que se pulse una tecla

9.1.4 Prompt [parámetros]

Sirve para cambiar el prompt de msdos.

$p Mostrar el trayecto actual
$g Mostrar el separador >
$l Mostrar el separador <
$b Mostrar el separador |
$q Mostrar el separador =
$$ Mostrar el separador $
$t Mostrar la hora
$d Mostrar la fecha
$v Mostrar la versión del sistema
$n Mostrar la unidad actual
$h Retroceso. Borra el caracter previo
$e Escape. Muestra el caracter \
$_ Retorno de carro y salto de línea (equivale a chr 10 y chr 13 ascii

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

9.1.5 Date [fecha]

Ver/poner la fecha del sistema

9.1.6 Time [hora]

Ver/poner hora del sistema

9.1.7 Ver

Versión del sistema

9.1.8 Vol [Unidad]

Volumen de la unidad especificada.

9.1.9 Path [trayecto]

Indica 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.

En Windows 2000 y XP no se utiliza autoexec.bat pero se existe una variable del
sistema llamada PATH.

9.1.10 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 d
  • Links de descarga
http://lwp-l.com/pdf19116

Comentarios de: Curso Batch (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad