script en msdos

14
LENGUAJE DE SCRIPT EN EL MSDOS

Upload: hermes-abanto

Post on 13-Jun-2015

441 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Script en msdos

LENGUAJE DE SCRIPT EN EL MSDOS

Page 2: Script en msdos

Grupos de leng. de programación

Lenguajes para programación de sistemas System programming languages Rigurosos, seguros, eficientes Adecuados para programas complicados

Lenguajes de scripts Scripting languages Flexibles, menos seguros, menos eficientes Adecuados para programas sencillos

Page 3: Script en msdos

Lenguajes de órdenes: Ejemplos

MS-DOS, Windows COMMAND.COM, CMD.EXE

UNIX, Linux sh (Bourne, estándar) csh, tcsh (C, algo irregular) ksh (Korn, UNIX de ATT) bash (Bourne actualizado, Linux)

Page 4: Script en msdos

Lenguaje de órdenes de MS-DOS

Sintaxis general orden argumentos...

orden interna (DIR, COPY, ... - no devuelve error) orden externa (programa o script - devuelve error)

Comentarios REM texto del comentario

Etiquetas :nombre

Page 5: Script en msdos

Lenguaje de órdenes de MS-DOS

Escribir resultados ECHO resultado ECHO. (línea en blanco) ECHO ON/OFF (control de traza) @orden (suprime traza) ECHO (consulta estado de traza)

Terminar la ejecución EXIT

Page 6: Script en msdos

Lenguaje de órdenes de MS-DOS Ejecutar un programa o un fichero de texto

con órdenes (script) nombre argumentos...

ejecuta nombre.bat / nombre.exe / nombre.com lo busca en el directorio actual y en el PATH si es un script (.bat), no retorna

CALL nombre argumentos... si es un script, sí retorna

COMMAND /C orden... Ejecuta un shell secundario y retorna

Page 7: Script en msdos

Lenguaje de órdenes de MS-DOS

Argumentos o parámetros nombre arg1 arg2 ... (max. 120

caracteres) %1, %2, ... %9 SHIFT (%1%2 %3 %4...) %0 (nombre) ERRORLEVEL (nivel de retorno)

Redirección de la E/S estándar nombre < entrada | otro-nombre > salida ... >> salida (añade nuevo texto)

Page 8: Script en msdos

Lenguaje de órdenes de MS-DOS Entorno o contexto de ejecución

SET variable=valor (¡ojo!, sin dejar espacio)

SET variable= (suprime la variable) %variable% (recupera el valor) SET (presenta todas las variables) PATH lista-de-directorios (SET PATH=...) PATH (ECHO %PATH%) CD directorio (cambia directorio actual) x: (cambia unidad actual) CD (consulta directorio actual)

Page 9: Script en msdos

Lenguaje de órdenes de MS-DOS Estructuras de control: IF-THEN

IF condición acción NOT, ==, EXIST, ERRORLEVEL

Estructuras de control: IF-THEN-ELSEIF condición GOTO si-condición... acción de no-condición (else)GOTO fin-condición:si-condición... acción de sí-condición (then):fin-condición

Page 10: Script en msdos

Lenguaje de órdenes de MS-DOS Estructuras de control: bucle WHILE

:inicio-bucleIF NOT condición GOTO fin-bucle... acción del bucleGOTO inicio-bucle:fin-bucle

Estructuras de control: bucle FOR FOR %%x IN (lista) DO acción-con-%%x FOR %%x IN (lista) DO CALL acción...

Page 11: Script en msdos

Lenguaje de órdenes de MS-DOS Designar ficheros y grupos de ficheros

unidad:\directorio\...\nombre.ext por omisión, unidad o directorio actual . (directorio actual) .. (directorio padre) ?* (comodines)

Consultar ficheros o directorios DIR patrón DIR (equivale a DIR *) DIR /opciones... (/S /P /W /B /O ... etc.)

Page 12: Script en msdos

Lenguaje de órdenes de MS-DOS Condición de existencia

IF EXIST fichero ... (existe fichero) IF EXIST directorio\nul (existe directorio)

Consultar el contenido de un fichero (texto) TYPE fichero (no admite

patrones) Cambiar el nombre/extensión

REN fichero nuevo-nombre (admite patrones) nuevo patrón: nombre.*, *.ext

Eliminar ficheros DEL patrón (¡ojo!: * elimina todo)

Page 13: Script en msdos

Lenguaje de órdenes de MS-DOS Copiar o mover ficheros

COPY origen destino (destino fich. o dir.) COPY origen (destino = .) MOVE origen destino (destino dir.) MOVE origen (destino = .)

Crear y eliminar directorios MKDIR directorio RMDIR directorio (debe estar vacío) se pueden abreviar: MD, RD

Page 14: Script en msdos

Lenguaje de órdenes de MS-DOS Tratar grupos de ficheros

FOR %%x IN (patrón) DO acción-%%x Sólo patrón de ficheros, no directorios Ejemplo: FOR %%f IN (*.txt) DO type %%f

Obtener ayuda sobre una orden orden /? Consultar la ayuda de Windows (comandos)