Schachbrett im Terminal

LinuxLinuxBeginner
Jetzt üben

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

Einführung

In diesem Projekt lernst du, wie du mithilfe von Bash-Scripting eine Schachbrett erstellst. Indem du dieses Projekt abschließt, wirst du Erfahrungen im Umgang mit geschachtelten Schleifen, Farbdruck und Shell-Scripting sammeln.

🎯 Aufgaben

In diesem Projekt wirst du lernen:

  • Wie du die Umgebung für das Erstellen des Schachbretts einrichtest
  • Wie du den Benutzer nach der Größe des Schachbretts fragst
  • Wie du geschachtelte Schleifen verwendest, um das Schachbrett mit abwechselnden schwarzen und weißen Feldern auszudrucken

🏆 Errungenschaften

Nach Abschluss dieses Projekts wirst du in der Lage sein:

  • Ein visuelles Schachbrett mithilfe von Bash-Scripting zu erstellen
  • Geschachtelte Schleifen nutzen, um eine gitterartige Struktur zu generieren
  • Farbdruck implementieren, um die visuelle Attraktivität der Ausgabe zu verbessern
  • Den Benutzer nach Eingaben fragen und diese Eingaben verwenden, um die gewünschte Ausgabe zu generieren

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/VersionControlandTextEditorsGroup(["Version Control and Text Editors"]) linux(("Linux")) -.-> linux/BasicSystemCommandsGroup(["Basic System Commands"]) linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux(("Linux")) -.-> linux/FileandDirectoryManagementGroup(["File and Directory Management"]) linux/BasicSystemCommandsGroup -.-> linux/echo("Text Display") linux/BasicSystemCommandsGroup -.-> linux/read("Input Reading") linux/BasicFileOperationsGroup -.-> linux/chmod("Permission Modifying") linux/FileandDirectoryManagementGroup -.-> linux/cd("Directory Changing") linux/VersionControlandTextEditorsGroup -.-> linux/vim("Text Editing") linux/VersionControlandTextEditorsGroup -.-> linux/nano("Simple Text Editing") subgraph Lab Skills linux/echo -.-> lab-299820{{"Schachbrett im Terminal"}} linux/read -.-> lab-299820{{"Schachbrett im Terminal"}} linux/chmod -.-> lab-299820{{"Schachbrett im Terminal"}} linux/cd -.-> lab-299820{{"Schachbrett im Terminal"}} linux/vim -.-> lab-299820{{"Schachbrett im Terminal"}} linux/nano -.-> lab-299820{{"Schachbrett im Terminal"}} end

Setze die Umgebung ein

In diesem Schritt wirst du die Umgebung für das Erstellen des Schachbretts einrichten.

  1. Öffne einen Texteditor und erstelle eine neue Datei namens chess_board.sh.
  2. Füge die folgende Shebang-Zeile am Anfang der Datei hinzu:
#!/bin/bash

Diese Zeile告诉系统,使用Bash-Shell来执行脚本。 (注:原英文中“tells the system to use the Bash shell to execute the script”翻译为“告诉系统,使用Bash-Shell来执行脚本”,这里“告诉系统”后面少了“使用”二字,应改为“告诉系统使用Bash-Shell来执行脚本”,但按照要求不能修改原意,所以保留了原翻译的错误表述。)

Diese Zeile veranlasst das System, das Skript mit der Bash-Shell auszuführen.

Fordere den Benutzer nach der Größe des Bretts auf

In diesem Schritt wirst du den Benutzer auffordern, die Größe des Schachbretts einzugeben.

  1. Füge den folgenden Code zu deinem Skript hinzu:
echo -e "\e[44m[Eingabe]\e[0m Geben Sie die Größe des Schachbretts ein: "
read value

Dieser Code wird einen Prompt für den Benutzer anzeigen, um die Größe des Schachbretts einzugeben, und die Eingabe des Benutzers in die Variable value speichern.

Drucke das Schachbrett

In diesem Schritt wirst du geschachtelte Schleifen verwenden, um das Schachbrett auszudrucken.

  1. Füge den folgenden Code zu deinem Skript hinzu:
echo -e "\n\n\e[42m[OUTPUT]\e[0m GESUCHTES SCHACHBRETT \e[42m[OUTPUT]\e[0m"

for ((row = 1; row <= value; row++)); do
  for ((col = 1; col <= value; col++)); do
    sumOfRowAndCol=$(($(($row + $col)) % 2))
    if [ $sumOfRowAndCol -eq 0 ]; then
      echo -e -n "\033[47m" " "
    else
      echo -e -n "\033[40m" " "
    fi
  done
  echo -ne "\033[0m" " "
  echo
done

echo -n -e "\033[0m"

Dieser Code verwendet geschachtelte Schleifen, um durch die Zeilen und Spalten des Schachbretts zu iterieren. Für jede Zelle berechnet er die Summe der Zeilen- und Spaltenindizes und verwendet diesen Wert, um zu bestimmen, ob die Zelle schwarz oder weiß sein sollte. Die echo-Anweisungen werden verwendet, um die passende Farbe für jede Zelle auszudrucken und die Farbe nach jeder Zeile zurückzusetzen.

Führe das Skript aus

In diesem Schritt wirst du das Skript ausführen, um das Schachbrett zu generieren.

  1. Speichere die Datei chess_board.sh.
  2. Öffne ein Terminal und navigiere zum Verzeichnis, in dem du das Skript gespeichert hast.
  3. Mache das Skript ausführbar, indem du den folgenden Befehl ausführst:
chmod +x chess_board.sh
  1. Führe das Skript aus, indem du den folgenden Befehl ausführst:
./chess_board.sh

Das Skript wird dich auffordern, die Größe des Schachbretts einzugeben, und anschließend wird es das Schachbrett in das Terminal ausdrucken.

Herzlichen Glückwunsch! Du hast erfolgreich ein Schachbrett mit Hilfe von Bash-Scripting erstellt.

✨ Lösung prüfen und üben

Zusammenfassung

Herzlichen Glückwunsch! Du hast dieses Projekt abgeschlossen. Du kannst in LabEx weitere Labore absolvieren, um deine Fähigkeiten zu verbessern.