Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa Última revisión Ambos lados, revisión siguiente | ||
clase:daw:si:2eval:tema13 [2021/01/23 10:05] admin [wc] |
clase:daw:si:2eval:tema13 [2021/02/05 18:40] admin [head] |
||
---|---|---|---|
Línea 1: | Línea 1: | ||
====== 13. Scripts avanzados en Linux ====== | ====== 13. Scripts avanzados en Linux ====== | ||
+ | En este temas vamos a ver usa serie de órdenes que se usan concatenadas usando una tubería '' | ||
+ | |||
+ | Mas información: | ||
+ | * [[https:// | ||
===== grep ===== | ===== grep ===== | ||
- | * [[http://enavas.blogspot.com.es/2008/04/el-shell-de-linux-comando-grep.html|El shell de linux: Comando | + | * [[https://rm-rf.es/ejemplos-practicos-de-grep-y-egrep/|Ejemplos prácticos |
- | * [[http://www.esdebian.org/ | + | * [[https://rm-rf.es/unix-expresiones-regulares/|Unix: Expresiones regulares]] |
* [[http:// | * [[http:// | ||
Línea 17: | Línea 21: | ||
</ | </ | ||
+ | * Expresiones regulares | ||
+ | |||
+ | ^ Expresion ^ Significado ^ Ejemplo ^ Explicación Ejemplo ^ | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
===== cut ===== | ===== cut ===== | ||
Línea 68: | Línea 85: | ||
<sxh bash> | <sxh bash> | ||
- | logongas@beren: | + | echo -n a | wc -c |
1 | 1 | ||
- | logongas@beren: | + | echo -n á | wc -c |
2 | 2 | ||
- | logongas@beren: | + | echo -n a | wc -m |
1 | 1 | ||
- | logongas@beren: | + | echo -n á | wc -m |
1 | 1 | ||
Línea 80: | Línea 97: | ||
</ | </ | ||
+ | ===== head ===== | ||
+ | Muestra las primeras lineas de un fichero. Por defecto son las 10 primeras. | ||
+ | |||
+ | \\ | ||
+ | |||
+ | * Mostrar solo las primeras 10 líneas de un fichero | ||
+ | <sxh bash> | ||
+ | cat fichero | head | ||
+ | </ | ||
+ | |||
+ | \\ | ||
+ | |||
+ | * Mostrar solo las primeras 13 líneas de un fichero | ||
+ | <sxh bash> | ||
+ | cat fichero | head -13 | ||
+ | </ | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ===== tail ===== | ||
+ | Muestra las últimas lineas de un fichero. Por defecto son las 10 últimas. | ||
+ | |||
+ | \\ | ||
+ | |||
+ | * Mostrar solo las últimas 10 líneas de un fichero | ||
+ | <sxh bash> | ||
+ | cat fichero | tail | ||
+ | </ | ||
+ | |||
+ | \\ | ||
+ | |||
+ | * Mostrar solo las últimas 13 líneas de un fichero | ||
+ | <sxh bash> | ||
+ | cat fichero | tail -13 | ||
+ | </ | ||
+ | |||
+ | \\ | ||
+ | |||
+ | |||
+ | |||
===== sed ===== | ===== sed ===== | ||
Línea 129: | Línea 186: | ||
==== Ejercicio 3 ==== | ==== Ejercicio 3 ==== | ||
- | Haz un Script llamado " | ||
- | |||
- | |||
- | ==== Ejercicio 4 ==== | ||
Haz un script llamado '' | Haz un script llamado '' | ||
Línea 138: | Línea 191: | ||
- | ==== Ejercicio | + | ==== Ejercicio |
Haz un Script llamado " | Haz un Script llamado " | ||
Línea 149: | Línea 202: | ||
La memoria libre del sistema es de 69 MB | La memoria libre del sistema es de 69 MB | ||
- | ==== Ejercicio | + | ==== Ejercicio |
Haz un script llamado " | Haz un script llamado " | ||
- | + | ==== Ejercicio | |
- | ==== Ejercicio | + | |
- | ps y kill | + | |
- | + | ||
- | * Muestra todos los procesos del sistema | + | |
- | * Ejecuta la orden " | + | |
- | * En otra terminal muestra los procesos y verás que está el proceso " | + | |
- | * Haz que solo se muestre el pid y nombre del proceso de " | + | |
- | * Ahora mata el proceso. | + | |
- | + | ||
- | ==== Ejercicio 8 ==== | + | |
Haz un Script que muestre el siguiente mensaje: | Haz un Script que muestre el siguiente mensaje: | ||
Línea 172: | Línea 215: | ||
- | ==== Ejercicio | + | ==== Ejercicio |
- | Haz un Script llamado " | + | Haz un Script llamado " |
- | ==== Ejercicio | + | ==== Ejercicio |
Haz un Script llamado " | Haz un Script llamado " | ||
El % de uso del proceso con PID 3456 es 45 | El % de uso del proceso con PID 3456 es 45 | ||
Línea 181: | Línea 224: | ||
- | ==== Ejercicio | + | ==== Ejercicio |
Haz un Script que dado un PID de un proceso: | Haz un Script que dado un PID de un proceso: | ||
Línea 190: | Línea 233: | ||
Si la prioridad (nice) es mayor que 0 que muestre: | Si la prioridad (nice) es mayor que 0 que muestre: | ||
Prioridad baja | Prioridad baja | ||
+ | |||
+ | Deberás validar que se le pasa un argumento al script. | ||
+ | |||
+ | ==== Ejercicio 10 ==== | ||
+ | Haz un Script llamado " | ||
+ | |||
+ | Tendrá un único parámetro que deberá valer alguno de los siguientes: | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | |||
+ | Deberás validar que se le pasa un argumento al script. | ||
+ | |||
+ | ==== Ejercicio 11 ==== | ||
+ | Haz un Script llamado " | ||
+ | * Cree sea carpeta | ||
+ | * Que ese usuario tenga permisos sobre esa carpeta | ||
+ | |||
+ | Deberás validar que se le pasa un argumento al script. | ||
+ | |||
==== Ejercicio 12 ==== | ==== Ejercicio 12 ==== | ||
- | Haz un script llamado | + | Modifica el ejercicio anterior para añadir |
- | También ejecuta el Script de forma que toda su salida por consola se guarde en el fichero " | ||
- | | ||
+ | ==== Ejercicio 13 ==== | ||
+ | Haz un Script llamado " | ||
+ | |||
+ | |||
+ | Deberás validar que se le pasa un argumento al script. | ||
+ | |||
+ | |||
+ | ==== Ejercicio 14 ==== | ||
+ | Dado un fichero llamado '' | ||
+ | |||
+ | NumFactura, | ||
+ | 1, | ||
+ | 2, | ||
+ | 3, | ||
+ | |||
+ | Y suponiendo que en linux existen los usuarios a los que hace referencia '' | ||
+ | |||
+ | Crea un script llamado " | ||
+ | * El primer parámetro siempre será el número de la factura | ||
+ | * El segundo parámetro puede valer alguno de los siguientes | ||
+ | * ANYO_FACTURA : Mostrará el año de la factura | ||
+ | * BASE_IMPONIBLE: | ||
+ | * IMPORTE_TOTAL: | ||
+ | * NOMBRE: Mostrará el nombre completo del cliente. El nombre se debe sacar del fichero ''/ | ||
+ | |||
+ | Deberás validar que se le pasan 2 argumentos al script y que el segundo de ello tiene un valor válido. | ||
| | ||
- | ==== Ejercicio | + | ==== Ejercicio |
Servidor web con la calidad del aire de la ciudad | Servidor web con la calidad del aire de la ciudad | ||
Línea 220: | Línea 308: | ||
* Desde Windows navega al servidor y veras los datos | * Desde Windows navega al servidor y veras los datos | ||
- | ==== Ejercicio | + | ==== Ejercicio |
Modifica el ejercicio anterior para mostrar también la gráfica del Óxidos de nitrógeno (NOx) y dióxido de nitrógeno | Modifica el ejercicio anterior para mostrar también la gráfica del Óxidos de nitrógeno (NOx) y dióxido de nitrógeno | ||
| | ||
{{: | {{: | ||
- | ==== Ejercicio | + | ==== Ejercicio |
Haz un Script, llamado calida_aire_png.sh que generará la gráfica de un parámetro de la calidad del aire. | Haz un Script, llamado calida_aire_png.sh que generará la gráfica de un parámetro de la calidad del aire. | ||
La gráfica debe mostrar el nombre de la zona, lo que está mostrando y las unidades. (tal y como hemos visto en las anteriores gráficas) | La gráfica debe mostrar el nombre de la zona, lo que está mostrando y las unidades. (tal y como hemos visto en las anteriores gráficas) |