Download Entornos de desarrollo de software
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