gnuservers.com.ar - Algunos ejercicios para practicar


Preguntas teóricas generales

  1. ¿Por qué decimos que "Linux" es solamente el kernel del sistema operativo que utilizamos?

  2. ¿Qué representa cada una de las columnas que vemos por pantalla al ejecutar un ls -l?

  3. Explique porqué no se puede crear un "hard-link" en el disco rígido, de un archivo que se encuentra en un diskette.

  4. ¿Que son los meta-caracteres de shell? ¿Para qué se utilizan? Cite algunos ejemplos.

  5. ¿Cómo se determina en los sistemas UNIX el tipo de un archivo?

  6. ¿En qué consiste el dispositivo /dev/tty

  7. ¿Qué es una variable de entorno? ¿Qué variables de entorno son heredadas por las aplicaciones que se ejecutan?

  8. ¿Cuál es la función principal de un "filtro"? Cite algunos filtros y su funcionalidad básica.

  9. ¿En que consiste una "Expresion Regular". De algunos ejemplos.?

Ejercicios Prácticos - Básicos

  1. Además del comando "who" existe otro comando similar: "w". Utilice el manual del comando "w" para explicar qué significa la salida que obtenemos al ejecutarlo.

  2. ¿Que comando debemos ejecutar para crear un symlink llamado "HOWTO", al directorio "/usr/share/doc/HOWTO/es/HOWTO"?

  3. Ejecute touch #foo.c, explique lo que sucede.

Ejercicios Prácticos - Archivos, permisos y propiedad

  1. ¿De qué manera podemos evitar que los otros usuarios puedan ver el contenido de un directorio?

  2. ¿Cómo podemos hacer para que el archivo "ulises" tenga los siguientes permisos?

  3. ¿Qué permisos asigna el comando "chmod 755 /bin" ? ¿Por qué, cuando ejecutamos este comando, nos dice que no poseemos los permisos necesarios?

  4. Explique qué permisos asignan o desasignan los siguientes comandos:

  5. Sobre el directorio /usr/bin
  6. Sobre el directorio /etc

Ejercicios Prácticos - Scripts de Shell

  1. Cite por lo menos dos maneras distintas de ejecutar un script de shell.

  2. Crear un script de Shell que monte la diskettera, copie todos los archivos (incluyendo subdirectorios) de la diskettera a un directorio que se pase como parámetro, y luego desmonte la diskettera. (Ayuda: para copiar tambien los subdirectorios, debe utilizarse un comando recursivo)

  3. Crear un script de Shell que liste únicamente los nombres de los directorios que se encuentran a partir del directorio actual.

  4. Realizar un script que espere hasta que un determinado proceso se ejecute. Y cuando ese proceso se ejecuta, matarlo. (Ayuda: utilizar el comando killall).

  5. Crear un script que reciba un directorio como primer parámetro, y a continuación una lista de archivos. El script debe validar que los parámetros recibidos sean realmente archivos y luego copiarlos al directorio recibido.

Ejercicios Prácticos - Filtros

  1. ¿Qué comando debe ejecutarse para contar la cantidad total de caracteres contenidos en todos los archivos del directorio actual?

  2. Realizar un script de Shell que compare dos archivos (que se reciben como parámetro) y diga por pantalla cuál de ellos tiene mayor cantidad de líneas.

Ejercicios Prácticos - Expresiones regulares

  1. ¿Qué debemos ejecutar para listar todos los archivos que tienen permiso de lectura, escritura y ejecución para los "otros"?

  2. Crear un script que lea un archivo de entrada, y guarde en otro archivo de salida, las líneas que comienzan con una vocal (mayúscula o minúscula).
    Extensión: recibir los nombres de los archivos por parámetros.

  3. Realizar una expresión regular que concuerde lo mejor posible con números telefónicos, tanto de formato internacional como nacional.
    Ejemplos de números válidos: ++54-11-4652-8589 ** 4512-8874 ** 43-9856
    Ejemplos de números no válidos: 5--8558 ** 4586- ** ++--8759

  4. El patrón .*@[^.]*\..* ¿Con qué tipo de cadena concuerda? ¿Puede mejorarlo?

  5. Realice un script que, leyendo el diccionario del sistema, almacene en un archivo la cantidad de palabras que empiezan con a, las que empiezan con b, las que empiezan con c, etc.

Esperamos que estos ejercicios te sirvan para practicar. Si estás desesperado y no encontrás la respuesta a alguno en particular, aquí están las respuestas.