1 / 23

Entornos de programación

Entornos de programación. Lenguajes de guiones ( Scripting Languages ). Grupos de lenguajes de programac. Lenguajes para programación de sistemas System programming languages Rigurosos, seguros, eficientes Adecuados para programas complicados Lenguajes de guiones ( scripts )

yuma
Download Presentation

Entornos de programación

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Entornos de programación Lenguajes de guiones (Scripting Languages)

  2. Grupos de lenguajes de programac. • 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

  3. Ejemplos de leng. de programación • Lenguajes para programación de sistemas • COBOL, FORTRAN, C/C++/C# • Pascal, Modula-2, Oberon, Ada • Java • Lisp, Haskell, Smalltalk, Eiffel, ... • Lenguajes de guiones (scripts) • Lenguajes de órdenes (command/shell languages) • Rexx, Tcl, Perl, Pyton, Ruby • VBScript, JavaScript

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

  5. Lenguajes de órdenes: Ejemplos • MS-DOS, Windows • CMD.EXE - 32 bits (WinNT/2000/XP ) • COMMAND.COM - 16 bit (MS-DOS, Win9x) • UNIX, Linux • sh (Bourne, estándar) • csh, tcsh (C, algo irregular) • ksh (Korn, UNIX de ATT) • bash (Bourne actualizado, Linux)

  6. Lenguaje de órdenes de WinNT • Sintaxis general • orden argumentos... • orden interna (DIR, COPY, ... - no devuelve error) • orden externa (programa o script - devuelve error) • Comentarios • REM texto del comentario • :: texto del comentario • Etiquetas • :nombre • GOTO nombre

  7. Lenguaje de órdenes de WinNT • Argumentos actuales • valor (sin blancos) • /x (opción) • "valor ...\" ..." (con blancos, " literal) • Órdenes compuestas • orden ... & orden ... (secuencia) • orden ... && orden ... (condicional, si éxito) • orden ... || orden ... (condicional, si fallo) • ( órdenes ... ) (orden compuesta) • ^&^| ( & o | literal )

  8. Lenguaje de órdenes de WinNT • Escribir resultados • ECHO resultado • ECHO. (línea en blanco) • Traza de ejecución • ECHO ON/OFF (control de traza) • @orden (suprime traza) • ECHO (consulta estado de traza) • Terminar la ejecución • EXIT [/B [nivelerror]]

  9. Lenguaje de órdenes de WinNT • Ejecutar un programa o un fichero de texto con órdenes (script) • nombre argumentos... • ejecuta nombre.bat/cmd/exe/com • lo busca en el directorio actual y en el PATH • si es un script (.bat, .cmd), no retorna • CALL nombre argumentos... • si es un script, sí retorna • CMD /C orden... • Ejecuta un shell secundario y retorna • ERRORLEVEL (nivel de retorno)

  10. Lenguaje de órdenes de WinNT • Argumentos o parámetros • nombre arg1 arg2 ... • %1, %2, ... %9 • SHIFT (%1%2 %3 %4...) • %0 (nombre) • %* (todos los argumentos) • Redirección de la E/S estándar • nombre < entrada | otro-nombre > salida • ... >> salida (añade nuevo texto) • ... 2> salida (redirige salida de error) • ... 2>&1 (combina error y salida normal)

  11. Lenguaje de órdenes de WinNT • Entorno o contexto de ejecución • SET variable=valor (¡ojo!, sin dejar espacio) • SET variable= (suprime la variable) • %variable% (recupera el valor) • SET prefijo (presenta una o varias variable) • 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)

  12. Lenguaje de órdenes de WinNT • Cambio de directorio, temporal • PUSHD directorio (cambia directorio actual) • POPD (restaura anterior directorio actual) • PUSHD/POPD puede anidarse • Entorno de ámbito limitado • SETLOCAL (inicia ámbito local) • SET/CD/PATH (cambios locales) • fin del guión (termina el ámbito local) • ENDLOCAL (termina el ámbito local) • SETLOCAL/ENDLOCAL puede anidarse

  13. Lenguaje de órdenes de WinNT • Estructuras de control: IF-THEN-ELSE • IF condición acción • IF condición ( acción )ELSE acción • Condiciones • valor1 == valor2 (compara texto) • valor1 compara valor2 (compara número o texto) • EQU, NEQ, LSS, LEQ, GTR, GEQ • /I comparación (no distingue mayus./minus.) • EXIST nombre (existe fichero o directorio) • EXIST directorio\nul (existe directorio) • ERRORLEVEL valor (error >= valor) • NOT condición (negación)

  14. Lenguaje de órdenes de WinNT • Estructuras de control: IF-GOTO IF NOT condición GOTO no-condición ... acción de sí-condición (then) GOTO fin-condición :no-condición ... acción de no-condición (else) :fin-condición

  15. Lenguaje de órdenes de WinNT • Estructuras de control: bucle WHILE :inicio-bucle IF NOT condición GOTO fin-bucle ... acción del bucle GOTO inicio-bucle :fin-bucle

  16. Lenguaje de órdenes de WinNT • Estructuras de control: bucles FOR • FOR %%x IN (lista) DO acción-con-%%x • repite por cada valor de lista o archivos (lista=comodines) • FOR %%x IN (lista) DO CALL acción... • evita salir del bucle si acción no retorna • FOR /D %%x IN (lista) DO ...FOR /R [raíz] %%x IN (lista) DO ... • repite para cada directorio (/D) o árbol de subdirector. (/R) • FOR /L %%x IN (inicio, paso, fin) DO ... • bucle con contador

  17. Lenguaje de órdenes de WinNT • Designar ficheros y grupos de ficheros • unidad:\directorio\...\nombre.ext • por omisión, unidad o directorio actual • . (directorio actual) • .. (directorio padre) • ?* (comodines) • Lista de ficheros o directorios • DIR patrón • DIR (equivale a DIR *) • DIR/opciones... (/S /P /W /B /O ... etc.)

  18. Lenguaje de órdenes de WinNT • Listar el contenido de un fichero (texto) • TYPE fichero(s) (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)

  19. Lenguaje de órdenes de WinNT • 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

  20. Lenguaje de órdenes de WinNT • Expansión de parámetros (referencia a ficheros) • %~ccp (cc: letras de código, p: parámetro) • códigos: f: completo, d: unidad,p: directorio, n: nombre, x: extensióna: atributos, t: fecha/hora, z: tamaño • Ejemplo: cd  “c:\uno” %3=“dos\tres.txt”%~f3  c:\uno\dos\tres.txt%~d3  c:%~p3  \uno\dos\%~n3  tres%~x3  .txt

  21. Lenguaje de órdenes de WinNT • Expansión de variables (sustitución de texto) • %var:antes=después% • Ejemplo:SET var=textoECHO %var% -- %var:x=X% texto -- teXto

  22. Lenguaje de órdenes de WinNT • Cálculos aritméticos • SET /A variable = expresión • Ejemplo:SET /A x = 11 + 22x  33SET /A x = x + 5x  38 • Obtener ayuda sobre una orden • orden /? • help [orden]

  23. Lenguaje de órdenes de WinNT • Ayuda para la interacción • CLS (borra la pantalla) • COLOR bf (cambia los colores) bf (hexadecimal: fondo/texto) • PAUSE (espera pulsación de tecla) • MORE [fichero] (inserta pausas en texto largo) • CHOICE [/C:opciones] [mensaje] (lee opcióny fija ERRORLEVEL. Requiere instalar kit de recursos)

More Related