es:manual:items:shell
Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
es:manual:items:shell [2023/06/02 16:59] – root | es:manual:items:shell [2023/06/06 16:39] (actual) – root | ||
---|---|---|---|
Línea 1: | Línea 1: | ||
===== Ejecución de instrucciones del shell ===== | ===== Ejecución de instrucciones del shell ===== | ||
- | Esta extensión permite ejecutar instrucciones del //shell// del sistema operativo directamente e incrustar el resultado de la ejecución dentro del campo [[es: | + | Esta extensión permite ejecutar instrucciones del //[[wpes> |
- | + | ||
- | === Ejemplo 1 === | + | |
Por ejemplo, una pregunta de respuesta libre puede incluir el siguiente código en el enunciado: | Por ejemplo, una pregunta de respuesta libre puede incluir el siguiente código en el enunciado: | ||
- | + | ||
| | ||
< | < | ||
< | < | ||
- | cat $HOME/for.py | + | cat $HOME/for1.py |
</ | </ | ||
</ | </ | ||
- | y como patrón de respuesta, y el ejemplo de respuesta correcta | + | y como patrón de respuesta, y como ejemplo de respuesta correcta el siguiente: |
< | < | ||
- | python3 $HOME/for.py | + | python3 $HOME/for1.py |
</ | </ | ||
Que dará lugar a la siguiente pregunta: | Que dará lugar a la siguiente pregunta: | ||
- | En donde | + | {{ es: |
+ | |||
+ | Esta pregunta muestra el contenido del fichero " | ||
+ | |||
+ | Nótese que se ha definido una macro '' | ||
+ | |||
+ | En realidad esta pregunta se podría haber formulado de forma estática, sin necesidad de utilizar la etiqueta < | ||
+ | |||
+ | No obstante esta operación no siempre será posible compilarla a priori, si se introducen en la llamada elementos que hayan sido generados aleatoriamente, | ||
+ | |||
+ | <% int x = Random.nextInt(4, | ||
+ | Dado el siguiente programa en Python, for2.py:< | ||
+ | < | ||
+ | < | ||
+ | cat $HOME/ | ||
+ | </ | ||
+ | </ | ||
+ | | ||
+ | < | ||
+ | |||
+ | y como patrón de respuesta, y ejemplo de respuesta correcta: | ||
+ | |||
+ | < | ||
+ | python3 $HOME/ | ||
+ | </ | ||
+ | |||
+ | En este caso, Siette genera aleatoriamente un número entre 4 y 7 que se usa como parámetro de entrada en el patrón de respuesta, generando de esta forma múltiples preguntas con esta plantilla: | ||
+ | |||
+ | {{ es: | ||
+ | {{ es: | ||
+ | |||
+ | Este mecanismo también podría extenderse a la elección aleatoria del fichero de entrada entre un elenco de posibles ficheros disponibles en el directorio base. Por ejemplo suponiendo que disponemos de distintos ficheros " | ||
+ | |||
+ | <% int n = Random.nextInt(1, | ||
+ | <% int x = Random.nextInt(4, | ||
+ | Dado el siguiente programa en Python, for.py:< | ||
+ | < | ||
+ | < | ||
+ | cat $HOME/ | ||
+ | </ | ||
+ | </ | ||
+ | | ||
+ | < | ||
+ | |||
+ | y como patrón de respuesta, y ejemplo de respuesta correcta: | ||
+ | |||
+ | < | ||
+ | python3 $HOME/ | ||
+ | </ | ||
+ | |||
+ | ==== Alternativa a las preguntas con ficheros ==== | ||
+ | Este etiqueta puede considerarse como una alternativa mas simple a la [[es: | ||
+ | También puede usarse para presentar datos dinámicos, bien sea de forma gráfica o mediante estadísticos, | ||
+ | En general si los datos de entrada son fijos, será mas conveniente reemplazar la ejecución por su resultado evitando la sobrecarga que supone la ejecución externa. Los ejemplos planteados anteriormente son tan simples que pueden reemplazarse por [[es: |
es/manual/items/shell.1685725145.txt.gz · Última modificación: 2023/06/02 16:59 por root