Manifiesto de Carga Interestelar

ShellBeginner
Practicar Ahora

Introducción

¡Bienvenido, cadete espacial! Te estás preparando para convertirte en oficial de carga a bordo de la nave interestelar "Nebula Nomad". Tu primera tarea consiste en desarrollar un sistema de inventario básico para las tres bodegas de la nave. Utilizarás arreglos de shell para almacenar las existencias y aceptarás un argumento por línea de comandos para visualizar el contenido de una bodega específica.

Creación del Script del Manifiesto de Carga

Tareas

  1. Abre el script de shell existente llamado cargo_manifest.sh ubicado en el directorio /home/labex/project.
  2. Completa el script rellenando las partes faltantes para crear y mostrar el inventario de carga de la nave.
  3. Ejecuta el script con diferentes argumentos para visualizar el inventario de cada bodega.

Requisitos

  1. El script cargo_manifest.sh ya ha sido creado en el directorio /home/labex/project con una estructura de código base.
  2. Completa el script realizando lo siguiente:
    • Crea tres arreglos llamados forward_bay, midship_bay y aft_bay.
    • Cada arreglo debe contener exactamente 3 elementos (cadenas de texto) que representen artículos de carga.
    • Utiliza la variable $1 para verificar qué inventario de bodega se debe mostrar.
    • Muestra el inventario de la bodega solicitada utilizando comandos echo.
  3. El script debe aceptar un argumento: "forward", "midship" o "aft".
  4. Si no se proporciona ningún argumento, el script debe mostrar: "Please specify a cargo bay: forward, midship, or aft"
  5. Si se proporciona un argumento no válido, el script debe mostrar: "Invalid cargo bay. Choose forward, midship, or aft."

Ejemplo

Tras completar el script, su ejecución debería generar una salida similar a esta:

$ ./cargo_manifest.sh forward
Forward Bay Inventory:
1. Space Suits
2. Oxygen Tanks
3. Repair Kits

$ ./cargo_manifest.sh midship
Midship Bay Inventory:
1. Food Supplies
2. Water Containers
3. Medical Equipment

$ ./cargo_manifest.sh aft
Aft Bay Inventory:
1. Spare Parts
2. Fuel Cells
3. Scientific Instruments

$ ./cargo_manifest.sh
Please specify a cargo bay: forward, midship, or aft

$ ./cargo_manifest.sh engine
Invalid cargo bay. Choose forward, midship, or aft.

Las cadenas de texto del script deben coincidir exactamente con los ejemplos para evitar fallos en las pruebas de validación.

✨ Revisar Solución y Practicar

Resumen

En este desafío, has desarrollado un sistema básico de gestión de inventario utilizando arreglos de shell y el manejo fundamental de argumentos por línea de comandos. Has practicado la definición de arreglos, el acceso a sus elementos y el uso de sentencias condicionales para procesar entradas de usuario. Estas habilidades son pilares fundamentales del scripting en shell y te servirán de base para tareas de automatización más avanzadas. ¡Sigue practicando y pronto estarás listo para gestionar inventarios interestelares reales!