1. El correo de los usuarios se guarda en el directorio
/var/mail, en archivos con el nombre de login de cada usuario.
Se desea un script monimail.sh que monitoree estos archivos, realizando
lo siguiente:
a) si el usuario fue borrado, pero quedó su archivo de correo, listar
estos usuarios.
b) si el operador invocó el programa sin parámetros, acá
termina.
c) si el operador dio un parámetro no numérico, avisa el error
y termina.
d) si el operador da como parámetro un número, listar los
usuarios que hace más de este número de días que no
lee su correo, es decir, que el archivo con su nombre en /var/mail no ha
sido accedido. Sugerencia: usar comando find.
(14 puntos)
2. Los creadores del
programa maravil necesitan un script de instalación, llamado
instalar.sh. Debe realizar estas tareas:
1) presentar como pantalla de bienvenida el archivo bienvenida.txt, que
ocupa menos de una pantalla; el usuario deberá digitar Enter para
continuar. (2p)
2) presentar una pantalla con la licencia, el archivo licencia.txt, también
menor de una pantalla; el usuario deberá digitar la tecla S para aceptar
la licencia, si no la acepta el programa avisa y termina con código
de error 1. (4p)
3) inicializar una variable DIRINSTAL con el nombre del directorio de instalación
por defecto, /usr/local/maravil. (2p)
4) preguntar al usuario el directorio de instalación, mostrando el
nombre sugerido (variable DIRINSTAL); el usuario podrá digitar un nombre
de directorio o Enter para aceptar el directorio sugerido. En cualquier caso,
el nombre del directorio de instalación deberá quedar en la
variable DIRINSTAL.(6p)
5) verificar si existe ya el directorio de instalación; es así,
continúa la instalación, y si no, deberá pedir autorización
al usuario, crearlo y verificar la creación exitosa. Si el usuario
no autoriza la creación del directorio, el programa termina con error
2; si no se pudo crear el directorio el programa termina con error 3. En todos
los casos se informa lo realizado.(10p)
6) copiar los archivos maravil.py, LEAME y manual.txt hacia el directorio
de instalación. Si la copia no da error, se informa la terminacion
exitosa de la instalación; en otro caso, se informa el error y se borra
el directorio de instalación y todo su contenido. (4p)
(28 puntos)
3. Se desea saber qué páginas de un servidor web son más accedidas. El archivo /var/log/apache/access.log contiene líneas del siguiente formato:
127.0.0.1 - - [25/Jul/2002:20:21:51 -0300]
"GET /fabmelo/version7/modif_clave.php?nombre=pa232&clave=madrid HTTP/1.1"
200 1609
127.0.0.1 - - [25/Jul/2002:20:21:58 -0300] "POST /fabmelo/version7/menu.php
HTTP/1.1" 200 1012
127.0.0.1 - - [25/Jul/2002:20:22:00 -0300] "GET /fabmelo/version7/presupuestos2.php?nombre=pa232&clave=belice
HTTP/1.1" 200 642
Los accesos contienen la palabra GET, los nombres de las páginas terminan en espacio o en "?". Listar los nombres de páginas de las 20 más accedidas. (12 puntos).
Total prueba: 54 puntos.