Download Entornos de desarrollo de software

Document related concepts
Transcript
Entornos de programación
Lenguajes de guiones (‘scripting languages’)
SCRIPTING-1
Lenguajes de guiones (‘scripting languages’)
Grupos de leng. de programación

Lenguajes para programación de sistemas




System programming languages
Rigurosos, seguros, eficientes
Adecuados para programas complicados
Lenguajes de guiones (scripts)



Scripting languages
Flexibles, menos seguros, menos eficientes
Adecuados para programas sencillos
SCRIPTING-2
Lenguajes de guiones (‘scripting languages’)
Ejemplos de leng. de programación

Lenguajes para programación de sistemas




COBOL, FORTRAN, C/C++
Pascal, Modula-2, Ada
Java
Lenguajes de guiones (scripts)



Lenguajes de órdenes (command languages,
shells)
Rexx, Tcl, Perl, Pyton, Ruby
VBScript, JavaScript
SCRIPTING-3
Lenguajes de guiones (‘scripting languages’)
Leng. de órdenes: características


Asociados a algún Sistema Operativo
Modos interactivo y no interactivo


Órdenes de usuario <-> automatización de operaciones
Funciones




Ejecutar programas
Usar/configurar dispositivos y servicios del S.O.
Manipular ficheros y grupos de ficheros
Elementos básicos de programación

Alternativas, bucles, variables, subprogramas, detección de
errores, etc.
SCRIPTING-4
Lenguajes de guiones (‘scripting languages’)
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)
SCRIPTING-5
Lenguajes de guiones (‘scripting languages’)
Lenguaje de órdenes de MS-DOS

Sintaxis general

orden argumentos...



Comentarios


orden interna (DIR, COPY, ... - no devuelve error)
orden externa (programa o script - devuelve error)
REM texto del comentario
Etiquetas

:nombre
SCRIPTING-6
Lenguajes de guiones (‘scripting languages’)
Lenguaje de órdenes de MS-DOS

Escribir resultados






ECHO resultado
ECHO.
ECHO ON/OFF
@orden
ECHO
(línea en blanco)
(control de traza)
(suprime traza)
(consulta estado de traza)
Terminar la ejecución

EXIT
SCRIPTING-7
Lenguajes de guiones (‘scripting languages’)
Lenguaje de órdenes de MS-DOS

Ejecutar un programa o un fichero de texto
con órdenes (script)

nombre argumentos...




CALL 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
si es un script, sí retorna
COMMAND /C orden...

Ejecuta un shell secundario y retorna
SCRIPTING-8
Lenguajes de guiones (‘scripting languages’)
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)
SCRIPTING-9
Lenguajes de guiones (‘scripting languages’)
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)
SCRIPTING-10
Lenguajes de guiones (‘scripting languages’)
Lenguaje de órdenes de MS-DOS

Estructuras de control: IF-THEN



IF condición acción
NOT, ==, EXIST, ERRORLEVEL
Estructuras de control: IF-THEN-ELSE
IF 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
SCRIPTING-11
Lenguajes de guiones (‘scripting languages’)
Lenguaje de órdenes de MS-DOS

Estructuras de control: bucle WHILE
:inicio-bucle
IF NOT condición GOTO fin-bucle
... acción del bucle
GOTO 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...
SCRIPTING-12
Lenguajes de guiones (‘scripting languages’)
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
DIR /opciones...
(equivale a DIR *)
(/S /P /W /B /O ... etc.)
SCRIPTING-13
Lenguajes de guiones (‘scripting languages’)
Lenguaje de órdenes de MS-DOS

Condición de existencia



Consultar el contenido de un fichero (texto)


TYPE fichero
(no admite patrones)
Cambiar el nombre/extensión



IF EXIST fichero ...
(existe fichero)
IF EXIST directorio\nul (existe directorio)
REN fichero nuevo-nombre (admite patrones)
nuevo patrón: nombre.*, *.ext
Eliminar ficheros

DEL patrón
(¡ojo!: * elimina todo)
SCRIPTING-14
Lenguajes de guiones (‘scripting languages’)
Lenguaje de órdenes de MS-DOS

Copiar o mover ficheros





COPY origen destino
COPY origen
MOVE origen destino
MOVE origen
(destino fich. o dir.)
(destino = .)
(destino dir.)
(destino = .)
Crear y eliminar directorios



MKDIR directorio
RMDIR directorio
(debe estar vacío)
se pueden abreviar: MD, RD
SCRIPTING-15
Lenguajes de guiones (‘scripting languages’)
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)
SCRIPTING-16