Escribir comandos o interconexiones para resolver las situaciones
que se indican. Cada pregunta vale 4 puntos.
1. Un archivo acceso.log de registro de accesos de usuarios a un sistema UNIX, genera un renglón por acceso, el primer campo es el nombre del usuario, y los campos están separados por ":". Escribir comandos que muestren el nombre de cada usuario y la cantidad de accesos registrados, en orden alfabético.
cat acceso.log | cut -d: -f1 | sort | uniq -c
2. Extraer del archivo acceso.log las líneas correspondientes al usuario jperez del mes de mayo del año 1997. La fecha figura en el formato "1300 15 Mayo 1997"; el primer número es la hora.
cat acceso.log | grep jperez | grep Mayo
3. Extraer del archivo acceso.log las líneas que correspondan al usuario jperez o al usuario elopez.
cat acceso.log | egrep "jperez|elopez"
4. Un archivo de nombres NoMBreS.tXT es tal que un mismo nombre puede estar en mayúsculas y minúsculas, mezcladas y de diferentes maneras. Generar una lista de nombres en minúscula con los 7 nombres que aparecen menos veces, sin importar como estén escritos.
cat NoMBreS.tXT | tr [a-z] [A-Z] | sort | uniq -c | \
sort -nr | head -7
5. Un archivo palabras.txt contiene palabras distintas una por línea. Extrar todas las palabras que empiecen y terminen con vocal, en minúscula o mayúscula.
cat palabras.txt | greo "^[aeiouAEIOU].*[aeiouAEIOU]"
6. Escribir comandos para realizar las siguientes tareas:
- actualizar fecha y hora del archivo LEAME, sin alterarlo.
touch LEAME
- cambiar la contraseña propia.
passwd
- trasladarse al directorio propio sin escribirlo.
cd
- invocar el editor vi en sólo lectura del archivo LEAME.
vi -R LEAME
7. Usando el archivo /etc/passwd,
- extraer una línea que muestre directorio propio y shell del usuario elopez.
cat /etc/passwd | grep elopez
- listar los usuarios que usan el shell /bin/bash.
cat /etc/passwd | grep /bin/bash
- listar los usuarios que no usan el shell /bin/bash.
cat /etc/passwd | grep -v /bin/bash | grep -v '#'
- contar la cantidad de usuarios
cat /etc/passwd | grep -v '#' | wc -l
Recordar que el archivo /etc/passwd suele tener comentarios, y que # puede ser interpretado por el shell.
8. Realizar las tareas siguientes:
- deshabilitar recepción de mensajes, verificar que así quedó.
mesg n; mesg
- indicar la ruta completa del comando UNIX nslookup.
which nslookup
9. Escribir comandos para ingresar como superusuario, cambiar el archivo /etc/group hacia el grupo adm, salir de superusuario.
su; chgrp adm /etc/group; exit
10. Presentar el archivo /etc/passwd con formato de página de largo 23 líneas, margen de 8 espacios y encabezado por la leyenda "Usuarios del Sistema".
cat /etc/passwd | pr -o8 -l23 -h "Usuarios del Sistema"
UNIX - 1