- Realiza un guión que me pida el nombre de un grupo, me indique si existe en el sistema, en este caso me muestre el nombre, el GID y los usuario que pertenecen a el.
- Tengo un fichero solo con los nombres de los alumnos.Realiza un script que me genere otro fichero con esos nombres en una columna.
- Realiza un script que de la lista de ficheros que le pasas solo te muestre los nombres de los ficheros que contienen en su interior una palabra que también pasas en primer lugar. Comprueba que le pasas argumentos y que son ficheros con el permiso oportuno.
- Realiza un guión que me muestre tu nombre y 3 apellidos, al revés, es decir 1º el tercer apellido, luego el 2º apellido... .
- Realiza un script que me muestre la cadena que le pasas totalmente al revés, letras.
- Crea un script que muestre los usuarios del sistema y permita acceder al usuario elegido al sistema.
- Diseña un script que busque cualquier fichero que pueda ser modificado por cualquier usuario y guarde una lista de estos fichero con su ruta en el fichero "ficherospeligrosos".
- Versión 1:Crea un script que busque todos los archivos que contengan la palabra "hack" en el nombre y los guarde en /root/cuarentena.
- Versión 2:Crea un script que busque todos los archivos que contengan la palabra "hack" y los guarde en /root/cuarentena.
- Crea un script que me muestre solo el PID del proceso "bash". Utiliza distintos comandos.
Mi escritorio
jueves, 27 de septiembre de 2018
Scripts de Linux XV.
miércoles, 19 de septiembre de 2018
Scripts de Linux XIV.
- Realiza un guión que me muestre sólo los nombres de los usuarios, sin repetir.
- Realiza un script que me muestre un menú que me permita elegir entre sumar, restar, multiplicar, dividir, dos números que pida por teclado. También tendré la opción salir.
- Realiza un script que me muestre el contenido de un fichero con las líneas numeradas. No utilizar nl.
- Realiza un guión que me cuente las líneas que contiene un fichero. No utilizar wc.
- Realiza un script que me diga que si la frase que le paso es palíndroma.
martes, 18 de septiembre de 2018
Procesos en Linux II
Comandos que nos permiten gestionar procesos en Linux. II parte.
Ejecuta los siguientes comandos y analiza los resultados:
- time who
- sleep 20; echo han pasado 20 segundos
- uptime
- Lanza el proceso sumas.exe con la máxima prioridad:
- Ejecuta el comando oportuno para comprobar que la prioridad ha sido cambiada:
- Lanza el proceso restas.exe con la mínima prioridad:
- Disminuye la prioridad del proceso sumas.exe en 10 puntos.
- Como consecuencia del excesivo uso de recursos de los procesos del usuario pepe, disminuye en 15 puntos la prioridad de los procesos de pepe.
- Lista los archivos abiertos al ejecutar tu navegador.
- Lista los ficheros abiertos por un usuario.
- Analiza la información que se muestra con:
- Sácame el pid del proceso "bash".
- Haz el ejercicio anterior con otros comandos.
nice -n-20 sumas.exe
ps al
nice -n20 restas.exe
renice +10 -p PID (averigua antes el pid)
renice +15 -u pepe
lsof -p PID (averigua antes el pid) lsof -c firefox ¿hay diferencias? ¿aparecen el mismo numero de ellos?
lsof -u alex
lsof -i
pidof bash
viernes, 14 de septiembre de 2018
Introducción programación shell. Parte IV Comando For.
Comando for:
Ejemplo:Programa un script que muestre todos los parámetros que pasas, hasta que encuentre una "f", y se acabe el programa.
for var in $* do if [ $var = "f" ] then break else echo $var fi done
con while
while [ $# -gt 0 ] do if [ $1 = "f" ] then break fi echo Argumento: $1 shift done
Realiza un script que te muestre todos los parámetros que le pases, excepto si es una ”c” que no la muestre y si es una “f” que finaliza el programa. 4º pregunta del examen 20-6-2018 entrada en el blog 20-6-2018
for var in $* do if [ $var = "f" ] then break elif [ $var = "c" ] then continue else echo $var fi done
Realizar un script que haga la media de los números que pase como parámetros.
var=0 for v in $* do var=`expr $var + $v` $(($var+$v)) done media=`expr $var / $#` echo $media
El for con otro formato
suma=0 s=$# for((i=1;i<=$s;i++)) do suma=$(($suma+$1)) shift done media=$(($suma/$s)) echo $media
Observa que hemos utilizado una variable intermedia para utilizar $# en este formato de for
Hacer un script que genere 6 ficheros numerados secuencialmente. Ejemplo fichero1, fichero2, fichero3....
for var in 1 2 3 4 5 6 do touch fichero$var done
Hacer un script que genere el factorial del número pasado como argumento.