Interstellares Frachtmanifest

ShellShellBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Willkommen, Weltraumkadett! Du trainierst, um ein Frachtoffizier auf dem interstellaren Schiff "Nebula Nomad" zu werden. Deine erste Aufgabe besteht darin, ein einfaches Lagerverwaltungssystem für die drei Frachtabteile des Schiffes zu erstellen. Du wirst Shell-Arrays (Shell-Arrays) verwenden, um die Lagerbestände zu speichern, und ein Befehlszeilenargument akzeptieren, um den Inhalt eines bestimmten Frachtabteils anzuzeigen.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicSystemCommandsGroup(["Basic System Commands"]) shell(("Shell")) -.-> shell/VariableHandlingGroup(["Variable Handling"]) shell(("Shell")) -.-> shell/ControlFlowGroup(["Control Flow"]) linux/BasicSystemCommandsGroup -.-> linux/echo("Text Display") shell/VariableHandlingGroup -.-> shell/variables_decl("Variable Declaration") shell/VariableHandlingGroup -.-> shell/variables_usage("Variable Usage") shell/VariableHandlingGroup -.-> shell/arrays("Arrays") shell/ControlFlowGroup -.-> shell/if_else("If-Else Statements") shell/ControlFlowGroup -.-> shell/case("Case Statements") subgraph Lab Skills linux/echo -.-> lab-388869{{"Interstellares Frachtmanifest"}} shell/variables_decl -.-> lab-388869{{"Interstellares Frachtmanifest"}} shell/variables_usage -.-> lab-388869{{"Interstellares Frachtmanifest"}} shell/arrays -.-> lab-388869{{"Interstellares Frachtmanifest"}} shell/if_else -.-> lab-388869{{"Interstellares Frachtmanifest"}} shell/case -.-> lab-388869{{"Interstellares Frachtmanifest"}} end

Erstellen des Frachtmanifest-Skripts

Aufgaben

  1. Öffnen Sie das vorhandene Shell-Skript namens cargo_manifest.sh im Verzeichnis /home/labex/project.
  2. Vervollständigen Sie das Skript, indem Sie die fehlenden Teile ausfüllen, um das Frachtinventar des Schiffes zu erstellen und anzuzeigen.
  3. Führen Sie das Skript mit verschiedenen Argumenten aus, um das Inventar jedes Frachtabteils anzuzeigen.

Anforderungen

  1. Das Skript cargo_manifest.sh ist bereits im Verzeichnis /home/labex/project mit einem Code-Rahmen erstellt.
  2. Vervollständigen Sie das Skript, indem Sie:
    • Drei Arrays (Arrays) namens forward_bay, midship_bay und aft_bay erstellen.
    • Jedes Array sollte genau 3 Elemente (Zeichenketten) enthalten, die Frachtgegenstände darstellen.
    • Verwenden Sie die Variable $1, um zu prüfen, welches Frachtabteil-Inventar angezeigt werden soll.
    • Zeigen Sie das Inventar des angeforderten Frachtabteils mit echo-Anweisungen an.
  3. Das Skript sollte ein Argument akzeptieren: entweder "forward", "midship" oder "aft".
  4. Wenn kein Argument angegeben wird, sollte das Skript anzeigen: "Please specify a cargo bay: forward, midship, or aft" (Bitte geben Sie ein Frachtabteil an: vorn, in der Mitte oder hinten)
  5. Wenn ein ungültiges Argument angegeben wird, sollte das Skript anzeigen: "Invalid cargo bay. Choose forward, midship, or aft." (Ungültiges Frachtabteil. Wählen Sie vorn, in der Mitte oder hinten.)

Beispiel

Nachdem Sie das Skript vervollständigt haben, sollte die Ausführung ähnliche Ergebnisse wie diese liefern:

$./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.

Die Zeichenketten im Skript müssen den Beispielen entsprechen und unverändert bleiben, um Testfehler zu vermeiden.

✨ Lösung prüfen und üben

Zusammenfassung

In dieser Herausforderung haben Sie ein einfaches Lagerverwaltungssystem mit Shell-Arrays (Shell-Arrays) und grundlegender Befehlszeilenargument-Verarbeitung erstellt. Sie haben das Definieren von Arrays, das Zugreifen auf Array-Elemente und das Verwenden von if-Anweisungen zum Verarbeiten von Befehlszeileneingaben geübt. Diese grundlegenden Fähigkeiten sind wichtig für das Shell-Skripting und werden Ihnen bei fortschrittlicheren Skripting-Aufgaben helfen. Üben Sie weiter, und Sie werden in kürzester Zeit bereit sein, echte interstellare Frachtinventare zu verwalten!