pkgname=Adolf-Hitler pkgver=1.0 pkgrel=1 pkgdesc="Tung Tung Tung Tung Tung Tung Tung Tung Tung Tung Tung Sahur" arch=('x86_64') license=('GPL') depends=('bash') # Required for playing the mp3 file options=('!strip') package() { # Create the executable script in /usr/bin/skibidi install -Dm755 /dev/stdin "$pkgdir/usr/bin/:3" << 'EOF' #!/bin/bash # Willkommensnachricht echo "Wähle eine Schwierigkeitsstufe: 'Windows-Commands-Ahh', 'Nerd' oder 'Retard'" read difficulty # Prüfen auf leere Eingabe if [ -z "$difficulty" ]; then echo "Keine Eingabe! Standard: Nerd" difficulty="nerd" else difficulty=$(echo "$difficulty" | tr '[:upper:]' '[:lower:]') fi # Überprüfen der Schwierigkeitsstufe case "$difficulty" in "windows-commands-ahh"|"nerd"|"retard") # Gültige Eingabe ;; *) echo "Ungültige Eingabe! Standard: Nerd" difficulty="nerd" ;; esac # Fragen und Antworten für jede Schwierigkeitsstufe # Format für offene Fragen: "Frage|Antwort" # Format für Multiple-Choice: "Frage|Option1|Option2|Option3|Option4|Korrekte Antwort" easy_questions=( "Welcher Befehl zeigt Systeminformationen wie OS und Kernel an?|neofetch" "Welcher Befehl erstellt ein neues Verzeichnis?|mkdir" "Was mache ich, wenn ich etwas nicht weiß oder etwas nicht klappt???|googlen und wenn es nicht klappt Norman fragen es sei denn ich bin bereits im call mit ihm und es ist nicht eine dumme Frage|Norman Fragen|Aufgeben|den griddy|googlen und wenn es nicht klappt Norman fragen es sei denn ich bin bereits im call mit ihm und es ist nicht eine dumme Frage" "Welcher Befehl listet Dateien im aktuellen Verzeichnis auf?|ls" "Welcher Befehl wechselt in das Home-Verzeichnis?|cd ~" "Welcher Texteditor ist einfach zu bedienen?|nano" "Welcher Befehl installiert ein Paket namens 'vim'?|pacman -S vim" "Welcher Befehl aktualisiert die Paketliste?|pacman -Sy" "Welcher Befehl zeigt das aktuelle Arbeitsverzeichnis an?|pwd" "Welcher Befehl kopiert eine Datei?|cp" "Welcher Befehl ändert das Passwort eines Benutzers?|passwd" "Welcher Befehl ist richtig, um die Paketliste zu aktualisieren?|pacman -Sy|apt-get update|yum update|dnf upgrade|pacman -Sy" "Welcher Befehl zeigt die Hilfe für 'pacman'?|pacman --help|pacman -h|man pacman|Alle genannten|Alle genannten" # "Welcher Befehl zeigt die Version des installierten Kernels an?|uname -r" "Welcher Befehl löscht eine Datei?|rm" "Welcher Befehl zeigt die Größe von Dateien an?|du" "Welcher Befehl zeigt die letzten 10 Zeilen einer Datei?|tail" "Welcher Befehl zeigt die ersten 10 Zeilen einer Datei?|head" "Welcher Befehl zeigt den Inhalt einer Textdatei an?|cat" "Welcher Befehl bewegt eine Datei an einen anderen Ort?|mv" "Welcher Befehl zeigt die aktuelle Zeit an?|date" "Welcher Befehl zeigt den freien Speicherplatz an?|df" "Welcher Befehl zeigt laufende Prozesse an?|ps" "Welcher Befehl beendet einen Prozess nach seiner ID?|kill" "Welcher Befehl zeigt die Benutzer-ID des aktuellen Benutzers?|id" "Welcher Befehl zeigt die Netzwerkkonfiguration?|ip addr" "Welcher Befehl zeigt die verfügbaren Shells an?|cat /etc/shells" "Welcher Befehl erstellt eine leere Datei?|touch" "Welcher Befehl zeigt die Umgebungsvariablen an?|env" "Welcher Befehl zeigt den Hostnamen des Systems?|hostname" "Welcher Befehl zeigt die CPU-Informationen an?|lscpu" "Welcher Befehl zeigt die verfügbaren Festplatten an?|lsblk" "Welcher Befehl zeigt die letzten Systemmeldungen?|dmesg" "Welcher Befehl zeigt die Benutzer, die angemeldet sind?|who" "Welcher Befehl zeigt die aktuelle Shell an?|echo $SHELL" "Welcher Befehl zeigt die Version von 'bash'?|bash --version" "Welcher Befehl zeigt die verfügbaren Editoren?|whereis nano" "Welcher Befehl zeigt die Manual-Seite für 'ls'?|man ls" "Welcher Befehl zeigt die Hilfe für 'mkdir'?|mkdir --help" "Welcher Befehl zeigt die Dateitypen an?|file" "Welcher Befehl zeigt die Verzeichnisstruktur grafisch an?|tree" "Welcher Befehl zeigt die letzten Änderungen an einer Datei?|stat" "Welcher Befehl zeigt die Größe eines Verzeichnisses an?|du -sh" "Welcher Befehl zeigt die Kernel-Logs an?|journalctl -k" "Welcher Befehl zeigt die aktuelle Benutzersitzung an?|whoami" "Welcher Befehl zeigt die verfügbaren Gruppen?|groups" "Welcher Befehl zeigt die Standard-Gateway-Adresse?|ip route" "Welcher Befehl zeigt die offenen Ports?|netstat -tuln" "Welcher Befehl zeigt die Systemlaufzeit an?|uptime" "Welcher Befehl zeigt die installierten Pakete an?|pacman -Q" "Welcher Befehl zeigt die Version eines Pakets?|pacman -Qi " "Welcher Befehl zeigt die Abhängigkeiten eines Pakets?|pacman -Si " "Welcher Befehl zeigt die Hilfe für 'cp'?|cp --help" "Welcher Befehl zeigt die Hilfe für 'mv'?|mv --help" "Welcher Befehl zeigt die Hilfe für 'rm'?|rm --help" "Welcher Befehl ist korrekt, um eine Datei zu löschen?|rm datei|delete datei|remove datei|del datei|rm datei" "Welcher Befehl zeigt die Hilfe für 'cat'?|cat --help|man cat|cat -h|Alle genannten|Alle genannten" "Welcher Befehl zeigt die Hilfe für 'tail'?|tail --help|man tail|tail -h|Alle genannten|Alle genannten" "Welcher Befehl zeigt die Hilfe für 'head'?|head --help|man head|head -h|Alle genannten|Alle genannten" "Welcher Befehl zeigt die Hilfe für 'touch'?|touch --help|man touch|touch -h|Alle genannten|Alle genannten" "Welcher Befehl ist korrekt, um eine leere Datei zu erstellen?|touch datei|newfile datei|create datei|mkfile datei|touch datei" "Welcher Befehl zeigt die Netzwerkverbindungen?|netstat -an|ip link|ifconfig -a|ip addr|ip addr" "Welcher Befehl zeigt die Manual-Seite für 'pacman'?|man pacman|pacman --help|pacman -h|Alle genannten|Alle genannten" ) normal_questions=( "Welcher Befehl aktualisiert die Paketliste und alle Pakete?|pacman -Syu" "Welcher Befehl sucht nach einem Paket namens 'firefox'?|pacman -Ss firefox" "Welcher Befehl entfernt ein Paket namens 'foo'?|pacman -R foo" "Welcher Befehl erstellt einen neuen Benutzer namens 'testuser'?|useradd -m testuser" "Welcher Befehl ändert die Berechtigungen einer Datei?|chmod" "Welcher Befehl ändert den Besitzer einer Datei?|chown" "Welcher Befehl startet einen Dienst namens 'sshd'?|systemctl start sshd" "Welcher Befehl aktiviert einen Dienst beim Booten?|systemctl enable " "Welcher Befehl formatiert eine Partition als ext4?|mkfs.ext4" "Was ist 'sudo'?|Ein Befehl, um Aktionen als Superuser auszuführen" "Welcher Befehl ist korrekt, um einen Benutzer zu erstellen?|useradd -m testuser|adduser testuser|useradd testuser|newuser testuser|useradd -m testuser" "Welcher Befehl entfernt ein Paket und seine Abhängigkeiten?|pacman -Rns foo|pacman -R foo|pacman -Rs foo|pacman -Rn foo|pacman -Rns foo" # "Welcher Befehl zeigt die Abhängigkeiten eines installierten Pakets?|pacman -Qi " "Welcher Befehl zeigt die Dateien eines installierten Pakets?|pacman -Ql " "Welcher Befehl zeigt die Kernel-Parameter beim Booten?|cat /proc/cmdline" "Welcher Befehl zeigt die aktiven Systemdienste?|systemctl list-units --type=service" "Welcher Befehl stoppt einen Dienst namens 'httpd'?|systemctl stop httpd" "Welcher Befehl zeigt die Logs eines Dienstes?|journalctl -u " "Welcher Befehl zeigt die verfügbaren Kernel-Module?|lsmod" "Welcher Befehl lädt ein Kernel-Modul?|modprobe " "Welcher Befehl zeigt die Systemlast?|top" "Welcher Befehl zeigt die Firewall-Regeln?|iptables -L" "Welcher Befehl zeigt die Routing-Tabelle?|ip route" "Welcher Befehl zeigt die ARP-Tabelle?|ip neigh" "Welcher Befehl zeigt die DNS-Konfiguration?|cat /etc/resolv.conf" "Welcher Befehl zeigt die Benutzerkonten?|cat /etc/passwd" "Welcher Befehl zeigt die Gruppenzugehörigkeit eines Benutzers?|groups " "Welcher Befehl zeigt die Shell eines Benutzers?|getent passwd " "Welcher Befehl zeigt die Prozesshierarchie?|pstree" "Welcher Befehl zeigt die Echtzeit-Prozessüberwachung?|htop" "Welcher Befehl zeigt die Dateisysteme?|df -h" "Welcher Befehl zeigt die UUID einer Partition?|blkid" "Welcher Befehl zeigt die aktiven Mount-Punkte?|findmnt" "Welcher Befehl zeigt die Kernel-Versionen im Boot-Menü?|ls /boot" "Welcher Befehl zeigt die Standard-Shell eines Benutzers?|chsh -l" "Welcher Befehl zeigt die Paketquellen?|cat /etc/pacman.conf" "Welcher Befehl zeigt die installierten Paketversionen?|pacman -Q --info" "Welcher Befehl zeigt die Größe des Paket-Caches?|du -sh /var/cache/pacman/pkg" "Welcher Befehl zeigt die letzten System-Updates?|cat /var/log/pacman.log" "Welcher Befehl zeigt die verfügbaren Netzwerkgeräte?|ip link" "Welcher Befehl zeigt die aktuellen Benutzerrechte?|ls -l" "Welcher Befehl zeigt die CPU-Auslastung?|mpstat" "Welcher Befehl zeigt die Festplattenleistung?|iostat" "Welcher Befehl zeigt die Netzwerkstatistiken?|nstat" "Welcher Befehl zeigt die Kernel-Konfigurationsdatei?|zcat /proc/config.gz" "Welcher Befehl zeigt die Systemzeit-Einstellungen?|timedatectl" "Welcher Befehl zeigt die aktiven Benutzersitzungen?|loginctl" "Welcher Befehl zeigt die Boot-Zeit?|systemd-analyze" "Welcher Befehl zeigt die Standard-Gateway-Einstellungen?|ip route show" "Welcher Befehl zeigt die Kernel-Ringpuffer?|dmesg" "Welcher Befehl zeigt die verfügbaren Zeitzonen?|timedatectl list-timezones" "Welcher Befehl zeigt die Systemarchitektur?|uname -m" "Welcher Befehl zeigt die verfügbaren Geräte?|lshw" "Welcher Befehl zeigt die aktuellen Umgebungsvariablen?|printenv" "Welcher Befehl ist korrekt, um einen Dienst zu stoppen?|systemctl stop |service stop |stop |kill |systemctl stop " "Welcher Befehl zeigt die Hilfe für 'systemctl'?|systemctl --help|man systemctl|systemctl -h|Alle genannten|Alle genannten" "Welcher Befehl ist korrekt, um die Logs eines Dienstes zu sehen?|journalctl -u |logctl |systemctl logs |cat /var/log/|journalctl -u " "Welcher Befehl zeigt die aktiven Netzwerkverbindungen?|ss -tuln|netstat -an|ip link|ifconfig|ss -tuln" "Welcher Befehl ist korrekt, um die Routing-Tabelle zu sehen?|ip route|route -n|netstat -r|Alle genannten|Alle genannten" "Welcher Befehl zeigt die UUIDs der Partitionen?|blkid|lsblk -f|fdisk -l|parted -l|blkid" "Welcher Befehl ist korrekt, um die Kernel-Module zu laden?|modprobe |insmod |loadmod |module load |modprobe " "Welcher Befehl zeigt die Systemlast in Echtzeit?|htop|top|ps|uptime|htop" ) hard_questions=( "Welcher Befehl klont ein AUR-Paket namens 'yay' und installiert es?|git clone https://aur.archlinux.org/yay.git && cd yay && makepkg -si" "Welcher Befehl wird verwendet, um einen benutzerdefinierten Kernel zu kompilieren (Hauptschritt)?|make" "Welcher Befehl installiert den GRUB-Bootloader auf /boot?|grub-install --target=x86_64-efi --efi-directory=/boot" "Welcher Befehl generiert die GRUB-Konfigurationsdatei?|grub-mkconfig -o /boot/grub/grub.cfg" "Welcher Befehl zeigt, welches Paket die Datei '/etc/passwd' besitzt?|pacman -Qo /etc/passwd" "Welcher Befehl bereinigt den Paket-Cache?|pacman -Sc" "Welcher Befehl partitioniert eine Festplatte?|fdisk" "Welcher Befehl mountet ein Dateisystem?|mount" "Welcher Befehl zeigt alle explizit installierten Pakete an?|pacman -Qe" "Welcher Befehl überprüft die Integrität der Paketdatenbank?|pacman -Qk" "Welcher Befehl ist korrekt, um ein AUR-Paket zu installieren?|git clone https://aur.archlinux.org/paket.git && cd paket && makepkg -si|pacman -S aur/paket|aurman -S paket|yay -S paket|git clone https://aur.archlinux.org/paket.git && cd paket && makepkg -si" "Welcher Befehl kompiliert den Kernel nach der Konfiguration?|make|gcc kernel.c|buildkernel|makepkg|make" "Welcher Befehl wird verwendet, um das gesamte System in Arch Linux zu aktualisieren?|pacman -Syu" "Welcher Befehl wird verwendet, um ein Paket zusammen mit seinen Abhängigkeiten und Konfigurationsdateien zu entfernen?|pacman -Rns " "Welcher Befehl wird verwendet, um ein Paket aus dem AUR nach dem Herunterladen und Entpacken zu bauen und zu installieren?|makepkg -si" "Welcher Befehl wird verwendet, um das Kernel-Konfigurationsmenü in Arch Linux zu starten?|make menuconfig" "Welcher Befehl wird nach der Kernel-Konfiguration verwendet, um ihn zu kompilieren?|make" "Welcher Befehl wird verwendet, um die Kernel-Module nach der Kompilierung zu installieren?|make modules_install" "Welches Tool wird verwendet, um das initramfs-Image in Arch Linux zu generieren?|mkinitcpio" "Erfordert der Befehl 'make menuconfig' sudo, wenn der Kernel in Arch Linux kompiliert wird?|no" "Erfordert der Befehl 'make modules_install' sudo?|yes" "Erfordert der Befehl 'pacman -Syu' sudo?|yes" # "Welcher Befehl zeigt die Abhängigkeiten eines AUR-Pakets?|makepkg -si --print-dependencies" "Welcher Befehl zeigt die Build-Abhängigkeiten eines Pakets?|pacman -Si " "Welcher Befehl zeigt die Kernel-Kompilierungszeit?|make -j$(nproc)" "Welcher Befehl zeigt die verfügbaren Boot-Images?|ls /boot/*.img" "Welcher Befehl zeigt die GRUB-Umgebungsvariablen?|grub-editenv list" "Welcher Befehl zeigt die aktuellen Kernel-Parameter?|sysctl -a" "Welcher Befehl zeigt die verfügbaren Kernel-Konfigurationen?|ls /usr/src/linux" "Welcher Befehl zeigt die Paket-Signaturen?|pacman -Qkk" "Welcher Befehl zeigt die AUR-Build-Fehler?|cat ~/.cache/yay/*/PKGBUILD.log" "Welcher Befehl zeigt die Systemd-Fehlerprotokolle?|journalctl -p 3 -xb" "Welcher Befehl zeigt die Kernel-Debug-Informationen?|cat /proc/kmsg" "Welcher Befehl zeigt die EFI-Variablen?|efivar -l" "Welcher Befehl zeigt die Partitionstabelle?|parted -l" "Welcher Befehl zeigt die LUKS-Verschlüsselungsinformationen?|cryptsetup luksDump /dev/sdX" "Welcher Befehl zeigt die verfügbaren RAID-Geräte?|cat /proc/mdstat" "Welcher Befehl zeigt die ZRAM-Konfiguration?|zramctl" "Welcher Befehl zeigt die Btrfs-Dateisysteminformationen?|btrfs filesystem show" "Welcher Befehl zeigt die LVM-Konfiguration?|lvs" "Welcher Befehl zeigt die Kernel-Treiber?|lspci -k" "Welcher Befehl zeigt die verfügbaren Kernel-Patches?|ls /usr/src/linux/patches" "Welcher Befehl zeigt die Systemd-Boot-Loader-Einträge?|bootctl list" "Welcher Befehl zeigt die Secure Boot-Status?|mokutil --sb-state" "Welcher Befehl zeigt die Kernel-Modul-Signaturen?|modinfo " "Welcher Befehl zeigt die CPU-Mikrocode-Version?|dmesg | grep microcode" "Welcher Befehl zeigt die verfügbaren Netzwerk-Profile?|nmcli connection show" "Welcher Befehl zeigt die D-Bus-Dienste?|dbus-send --system --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.ListNames" "Welcher Befehl zeigt die PAM-Konfiguration?|cat /etc/pam.d/*" "Welcher Befehl zeigt die SELinux-Status?|sestatus" "Welcher Befehl zeigt die AppArmor-Profile?|aa-status" "Welcher Befehl zeigt die Kernel-Hooks?|ls /etc/mkinitcpio.d/*.preset" "Welcher Befehl zeigt die Systemd-Timer?|systemctl list-timers" "Welcher Befehl zeigt die verfügbaren Snapshots?|snapper list" "Welcher Befehl zeigt die Kernel-Backtrace?|dmesg | grep -i stack" "Welcher Befehl zeigt die verfügbaren Zsh-Plugins?|ls /usr/share/zsh/plugins" "Welcher Befehl zeigt die Flatpak-Pakete?|flatpak list" "Welcher Befehl zeigt die Docker-Container?|docker ps -a" "Welcher Befehl zeigt die Kubernetes-Cluster-Informationen?|kubectl cluster-info" "Welcher Befehl zeigt die verfügbaren Virtualisierungs-Technologien?|virt-what" "Welcher Befehl zeigt die Systemd-Analyse der Boot-Zeit?|systemd-analyze blame" "Welcher Befehl zeigt die Netzwerk-Bandbreiten-Nutzung?|nload" "Welcher Befehl ist korrekt, um die EFI-Variablen zu sehen?|efivar -l|efivars|efi-list|eficonfig|efivar -l" "Welcher Befehl ist korrekt, um die LUKS-Verschlüsselung zu prüfen?|cryptsetup luksDump /dev/sdX|luksinfo /dev/sdX|cryptinfo /dev/sdX|luksdump /dev/sdX|cryptsetup luksDump /dev/sdX" "Welcher Befehl zeigt die Btrfs-Subvolumes?|btrfs subvolume list /|btrfs list|btrfs vol|subvol list|btrfs subvolume list /" "Welcher Befehl ist korrekt, um die Kernel-Module zu signieren?|sign-module |modsign |signmod |kmodsign |kmodsign " "Welcher Befehl zeigt die verfügbaren Kernel-Images?|ls /boot/vmlinuz*|ls /boot/kernel|ls /boot/vmlinux|ls /boot/kern|ls /boot/vmlinuz*" "Welcher Befehl ist korrekt, um die Systemd-Timer zu sehen?|systemctl list-timers|timerctl list|systemd-timers|timectl|systemctl list-timers" "Welcher Befehl zeigt die Flatpak-Remotes?|flatpak remote-ls|flatpak list-remotes|flatpak remotes|flatpak ls-remote|flatpak remote-ls" "Welcher Befehl ist korrekt, um die Docker-Images zu sehen?|docker images|docker list|docker img|docker ps|docker images" "Welcher Befehl zeigt die Kubernetes-Nodes?|kubectl get nodes|kube nodes|kubectl nodes|kube get nodes|kubectl get nodes" "Welcher Befehl zeigt die Systemd-Boot-Loader-Version?|bootctl --version|bootctl version|systemd-boot --version|bootctl -v|bootctl --version" ) # Punktevergabe easy_points=1 normal_points=2 hard_points=3 # Anzahl der Fragen pro Quiz num_questions=10 # Fragen und Antworten basierend auf Schwierigkeit auswählen case $difficulty in "windows-commands-ahh") questions=("${easy_questions[@]}") points=$easy_points ;; "nerd") questions=("${normal_questions[@]}") points=$normal_points ;; "retard") questions=("${hard_questions[@]}") points=$hard_points ;; esac # Zufällige Fragen auswählen total=${#questions[@]} if [ $total -lt $num_questions ]; then num_questions=$total fi selected_indices=($(shuf -i 0-$((total-1)) -n $num_questions)) # Punktestand initialisieren score=0 max_score=$((num_questions * points)) # Durch ausgewählte Fragen iterieren for i in "${selected_indices[@]}"; do echo "" # Frage und Antworten parsen IFS='|' read -r -a parts <<< "${questions[i]}" question="${parts[0]}" if [ ${#parts[@]} -eq 2 ]; then # Offene Frage correct_answer="${parts[1]}" echo "$question" read answer user_answer=$(echo "$answer" | tr '[:upper:]' '[:lower:]') correct_answer=$(echo "$correct_answer" | tr '[:upper:]' '[:lower:]') if [ "$user_answer" == "$correct_answer" ]; then echo "Korrekt!" score=$((score + points)) else echo "Falsch! Die korrekte Antwort ist: ${parts[1]}" fi else # Multiple-Choice-Frage correct_answer="${parts[5]}" echo "$question" echo "1) ${parts[1]}" echo "2) ${parts[2]}" echo "3) ${parts[3]}" echo "4) ${parts[4]}" echo "Geben Sie die Nummer (1-4) ein:" read answer if [ "$answer" -eq 1 ] && [ "${parts[1]}" == "$correct_answer" ]; then echo "Korrekt!" score=$((score + points)) elif [ "$answer" -eq 2 ] && [ "${parts[2]}" == "$correct_answer" ]; then echo "Korrekt!" score=$((score + points)) elif [ "$answer" -eq 3 ] && [ "${parts[3]}" == "$correct_answer" ]; then echo "Korrekt!" score=$((score + points)) elif [ "$answer" -eq 4 ] && [ "${parts[4]}" == "$correct_answer" ]; then echo "Korrekt!" score=$((score + points)) else echo "Falsch! Die korrekte Antwort ist: $correct_answer" fi fi done # Endgültigen Punktestand anzeigen echo "" echo "Quiz abgeschlossen!" echo "Ihr Punktestand ist $score von $max_score" # Wiederholungsoption echo "Möchten Sie das Quiz wiederholen? (ja/nein)" read replay if [ "$(echo "$replay" | tr '[:upper:]' '[:lower:]')" == "ja" ]; then exec "$0" fi EOF install -Dm755 /dev/stdin "$pkgdir/usr/bin/:3-alt" << 'EOF' #!/bin/bash # Willkommensnachricht echo "Willkommen zum Arch Linux Befehls-Quiz!" echo "Wählen Sie eine Schwierigkeitsstufe: leicht, normal, schwer" echo "Geben Sie 'leicht', 'normal' oder 'schwer' ein:" read difficulty difficulty=$(echo "$difficulty" | tr '[:upper:]' '[:lower:]') # Überprüfen der Schwierigkeitsstufe if [[ "$difficulty" != "leicht" && "$difficulty" != "normal" && "$difficulty" != "schwer" ]]; then echo "Ungültige Eingabe! Standard: normal" difficulty="normal" fi # Fragen und Antworten für jede Schwierigkeitsstufe # Format für offene Fragen: "Frage|Antwort" # Format für Multiple-Choice: "Frage|Option1|Option2|Option3|Option4|Korrekte Antwort" easy_questions=( "Welcher Befehl zeigt Systeminformationen wie OS und Kernel an?|neofetch" "Welcher Befehl erstellt ein neues Verzeichnis?|mkdir" "Was mache ich, wenn ich etwas nicht weiß oder etwas nicht klappt???|googlen und wenn es nicht klappt Norman fragen es sei denn ich bin bereits im call mit ihm und es ist nicht eine dumme Frage|Norman Fragen|Aufgeben|den griddy|googlen und wenn es nicht klappt Norman fragen es sei denn ich bin bereits im call mit ihm und es ist nicht eine dumme Frage" "Welcher Befehl listet Dateien im aktuellen Verzeichnis auf?|ls" "Welcher Befehl wechselt in das Home-Verzeichnis?|cd ~" "Welcher Texteditor ist einfach zu bedienen?|nano" "Welcher Befehl installiert ein Paket namens 'vim'?|pacman -S vim" "Welcher Befehl aktualisiert die Paketliste?|pacman -Sy" "Welcher Befehl zeigt das aktuelle Arbeitsverzeichnis an?|pwd" "Welcher Befehl kopiert eine Datei?|cp" "Welcher Befehl ändert das Passwort eines Benutzers?|passwd" "Welcher Befehl ist richtig, um die Paketliste zu aktualisieren?|pacman -Sy|apt-get update|yum update|dnf upgrade|pacman -Sy" "Welcher Befehl zeigt die Hilfe für 'pacman'?|pacman --help|pacman -h|man pacman|Alle genannten|Alle genannten" ) normal_questions=( "Welcher Befehl aktualisiert die Paketliste und alle Pakete?|pacman -Syu" "Welcher Befehl sucht nach einem Paket namens 'firefox'?|pacman -Ss firefox" "Welcher Befehl entfernt ein Paket namens 'foo'?|pacman -R foo" "Welcher Befehl erstellt einen neuen Benutzer namens 'testuser'?|useradd -m testuser" "Welcher Befehl ändert die Berechtigungen einer Datei?|chmod" "Welcher Befehl ändert den Besitzer einer Datei?|chown" "Welcher Befehl startet einen Dienst namens 'sshd'?|systemctl start sshd" "Welcher Befehl aktiviert einen Dienst beim Booten?|systemctl enable " "Welcher Befehl formatiert eine Partition als ext4?|mkfs.ext4" "Was ist 'sudo'?|Ein Befehl, um Aktionen als Superuser auszuführen" "Welcher Befehl ist korrekt, um einen Benutzer zu erstellen?|useradd -m testuser|adduser testuser|useradd testuser|newuser testuser|useradd -m testuser" "Welcher Befehl entfernt ein Paket und seine Abhängigkeiten?|pacman -Rns foo|pacman -R foo|pacman -Rs foo|pacman -Rn foo|pacman -Rns foo" ) hard_questions=( "Welcher Befehl klont ein AUR-Paket namens 'yay' und installiert es?|git clone https://aur.archlinux.org/yay.git && cd yay && makepkg -si" "Welcher Befehl wird verwendet, um einen benutzerdefinierten Kernel zu kompilieren (Hauptschritt)?|make" "Welcher Befehl installiert den GRUB-Bootloader auf /boot?|grub-install --target=x86_64-efi --efi-directory=/boot" "Welcher Befehl generiert die GRUB-Konfigurationsdatei?|grub-mkconfig -o /boot/grub/grub.cfg" "Welcher Befehl zeigt, welches Paket die Datei '/etc/passwd' besitzt?|pacman -Qo /etc/passwd" "Welcher Befehl bereinigt den Paket-Cache?|pacman -Sc" "Welcher Befehl partitioniert eine Festplatte?|fdisk" "Welcher Befehl mountet ein Dateisystem?|mount" "Welcher Befehl zeigt alle explizit installierten Pakete an?|pacman -Qe" "Welcher Befehl überprüft die Integrität der Paketdatenbank?|pacman -Qk" "Welcher Befehl ist korrekt, um ein AUR-Paket zu installieren?|git clone https://aur.archlinux.org/paket.git && cd paket && makepkg -si|pacman -S aur/paket|aurman -S paket|yay -S paket|git clone https://aur.archlinux.org/paket.git && cd paket && makepkg -si" "Welcher Befehl kompiliert den Kernel nach der Konfiguration?|make|gcc kernel.c|buildkernel|makepkg|make" "Welcher Befehl wird verwendet, um das gesamte System in Arch Linux zu aktualisieren?|pacman -Syu" "Welcher Befehl wird verwendet, um ein Paket zusammen mit seinen Abhängigkeiten und Konfigurationsdateien zu entfernen?|pacman -Rns " "Welcher Befehl wird verwendet, um ein Paket aus dem AUR nach dem Herunterladen und Entpacken zu bauen und zu installieren?|makepkg -si" "Welcher Befehl wird verwendet, um das Kernel-Konfigurationsmenü in Arch Linux zu starten?|make menuconfig" "Welcher Befehl wird nach der Kernel-Konfiguration verwendet, um ihn zu kompilieren?|make" "Welcher Befehl wird verwendet, um die Kernel-Module nach der Kompilierung zu installieren?|make modules_install" "Welches Tool wird verwendet, um das initramfs-Image in Arch Linux zu generieren?|mkinitcpio" "Erfordert der Befehl 'make menuconfig' sudo, wenn der Kernel in Arch Linux kompiliert wird?|no" "Erfordert der Befehl 'make modules_install' sudo?|yes" "Erfordert der Befehl 'pacman -Syu' sudo?|yes" ) # Punktevergabe easy_points=1 normal_points=2 hard_points=3 # Anzahl der Fragen pro Quiz num_questions=10 # Fragen und Antworten basierend auf Schwierigkeit auswählen case $difficulty in "leicht") questions=("${easy_questions[@]}") points=$easy_points ;; "normal") questions=("${normal_questions[@]}") points=$normal_points ;; "schwer") questions=("${hard_questions[@]}") points=$hard_points ;; esac # Zufällige Fragen auswählen total=${#questions[@]} if [ $total -lt $num_questions ]; then num_questions=$total fi selected_indices=($(shuf -i 0-$((total-1)) -n $num_questions)) # Punktestand initialisieren score=0 max_score=$((num_questions * points)) # Durch ausgewählte Fragen iterieren for i in "${selected_indices[@]}"; do echo "" # Frage und Antworten parsen IFS='|' read -r -a parts <<< "${questions[i]}" question="${parts[0]}" if [ ${#parts[@]} -eq 2 ]; then # Offene Frage correct_answer="${parts[1]}" echo "$question" read answer user_answer=$(echo "$answer" | tr '[:upper:]' '[:lower:]') correct_answer=$(echo "$correct_answer" | tr '[:upper:]' '[:lower:]') if [ "$user_answer" == "$correct_answer" ]; then echo "Korrekt!" score=$((score + points)) else echo "Falsch! Die korrekte Antwort ist: ${parts[1]}" fi else # Multiple-Choice-Frage correct_answer="${parts[5]}" echo "$question" echo "1) ${parts[1]}" echo "2) ${parts[2]}" echo "3) ${parts[3]}" echo "4) ${parts[4]}" echo "Geben Sie die Nummer (1-4) ein:" read answer if [ "$answer" -eq 1 ] && [ "${parts[1]}" == "$correct_answer" ]; then echo "Korrekt!" score=$((score + points)) elif [ "$answer" -eq 2 ] && [ "${parts[2]}" == "$correct_answer" ]; then echo "Korrekt!" score=$((score + points)) elif [ "$answer" -eq 3 ] && [ "${parts[3]}" == "$correct_answer" ]; then echo "Korrekt!" score=$((score + points)) elif [ "$answer" -eq 4 ] && [ "${parts[4]}" == "$correct_answer" ]; then echo "Korrekt!" score=$((score + points)) else echo "Falsch! Die korrekte Antwort ist: $correct_answer" fi fi done # Endgültigen Punktestand anzeigen echo "" echo "Quiz abgeschlossen!" echo "Ihr Punktestand ist $score von $max_score" # Wiederholungsoption echo "Möchten Sie das Quiz wiederholen? (ja/nein)" read replay if [ "$(echo "$replay" | tr '[:upper:]' '[:lower:]')" == "ja" ]; then exec "$0" fi EOF }