Actividad 6: Características de Bash

per Victor Carceler darrera modificació 2020-03-25T16:28:52+02:00
Bash (Bourne Again SHell) es uno de los intérpretes de comandos más extendidos. En esta actividad se van a probar algunas de sus características básicas.

Inicie una sesión de trabajo en la línea de comandos y realice las siguientes actividades.

  1. Consulte el historial de comandos
  2. Utilice la sintáxis !! para repetir el último comando
  3. Utilice la sintáxis ![n] para repetir algún otro comando
  4. Compruebe que los cursores (arriba, abajo) le permite desplazarse por la lista de sentencias introducidas.
  5. Compruebe que el autocompletado de comandos y nombres de ficheros funciona.
  6. El directorio /var/log guarda los ficheros de registro (bitácora) del sistema, cambie a dicho directorio.
  7. Utilice los patrones del shell para:
    1. Obtener un listado detallado de todos los ficheros con extensión .log
    2. Obtener un listado detallado de todos los ficheros que comienzan con k y tienen algún dígito en su nombre
    3. Obtener un listado detallado de todos los ficheros que tienen un nombre formado por 'syslog.', un carácter cualquiera y '.gz'
    4. Obtener un listado detallado de todos los ficheros que comienzan por vocal (mayúscula o minúscula) y terminan en .gz o en .log
    5. Obtener un listado detallado de todos los ficheros que no comienzan por vocal minúscula y en alguna parte de su nombre tienen la cadena log
  8. Sabiendo que el comando mkdir cuenta con la opción -p que permite crear los directorios padre del especificado si no existen (mkdir -p d1/d11/d111 crea d1 y d11, si no existen, antes de crear d111), y utilizando la expansión de llaves, utilice una sóla sentencia para crear la siguiente jerarquía de directorios:
    ~
    |---programas/
    | |---c/
    | | |---código_fuente/
    | | |---ejecutables/
    | |---java/
    | | |---código_fuente/
    | | |---ejecutables/
    | |---ensamblador/
    | | |---código_fuente/
    | | |---ejecutables/
  9. Obtenga la lista de alias definidos. Defina listado como un alias que le permita obtener un listado detallado, que muestre los ficheros ocultos y interprete en unidades 'humanas' el tamaño de los ficheros. Pruebe el alias listado. Cierre el terminal, abra uno nuevo, está definido el alias ?
  10. Defina la variable de entorno color de modo que tenga como valor el nombre de su color favorito. Muestre el contenido de la variable de entorno mediante el comando echo. Qué diferencia hay entre utilizar export o no al declarar la variable ?
  11. Obtenga la lista de variables de entorno definidas. Encuentra a su variable ? Elimine dicha variable de entorno.
  12. Obtenga el contenido de las variables de entorno: PATH, HOME, PS1 y RANDOM
  13. Modifique el prompt del sistema para que incluya: el carácter [, el carácter de control que activa la campanilla del sistema, el nombre del usuario, el carácter @, el nombre completamente cualificado (FQDN) de la máquina, un espacio, la hora actual en formato 24H.
  14. Si cierra el shell y abre uno nuevo, se conserva el prompt del sistema ? porqué ?
  15. Ponga a prueba los tres tipos de comillas
  16. Utilice el comando touch para crear los siguientes ficheros:
    1. Un fichero de nombre '???'
    2. Un fichero de nombre '*'
    3. Un fichero de nombre '? * ? *'
    4. Un fichero de nombre '[S*y ficheretr*n]'
    5. Un fichero de nombre 'Carta de amor de "Erminio" a "Leovigilda"'
  17. Borre, uno a uno, los ficheros anteriories.
  18. Compruebe, qué hacen los siguientes comandos:
    1. cat /etc/passwd >~/passwd
    2. cat /finchero_que_no_existe 2>~/error
    3. less </etc/passwd
    4. echo "Una línea" >~/fichero
    5. echo "Otra línea" >>~/fichero
  19. Compruebe el funcionamiento de las siguientes sentencias:
    1. sleep 5; sleep 5; sleep 5
    2. sleep 5 | sleep 5 | sleep 5
    3. cat /etc/passwd | less
    4. cat /etc/passwd | grep bash | less
    5. cat /etc/passwd | grep bash | wc -l