Einführung
Dieses Projekt führt Sie durch die Erstellung eines Task Schedulers mit einem Bash-Skript. Der Task Scheduler ermöglicht es Ihnen, Aufgaben zu planen und zu verwalten, die in bestimmten Intervallen wie stündlich, täglich oder wöchentlich ausgeführt werden sollen. Das Skript bietet Optionen, geplante Aufgaben aufzulisten, neue Aufgaben hinzuzufügen und vorhandene Aufgaben zu entfernen.
👀 Vorschau

Um loszulegen, müssen Sie eine Datei namens task_scheduler.sh erstellen und den bereitgestellten Code darin schreiben. Lassen Sie uns zum ersten Schritt übergehen.
🎯 Aufgaben
In diesem Projekt lernen Sie:
- Wie Sie die Projekt-Dateien erstellen
- Wie Sie Code hinzufügen, um geplante Aufgaben anzuzeigen
- Wie Sie Code hinzufügen, um eine neue Aufgabe hinzuzufügen
- Wie Sie Code hinzufügen, um eine Aufgabe zu entfernen
- Wie Sie die Hauptmenü-Schleife einrichten
- Wie Sie das Skript ausführbar machen
- Wie Sie das Projekt ausführen
🏆 Errungenschaften
Nach Abschluss dieses Projekts werden Sie in der Lage sein:
- Ein Bash-Skript zu erstellen
- Crontab verwenden, um Aufgaben zu planen
- Benutzer-Eingaben in einem Bash-Skript abzufragen
- Aufgaben in der Crontab hinzuzufügen und zu entfernen
- Eine Menü-Schleife in einem Bash-Skript zu erstellen
- Ein Bash-Skript ausführbar zu machen und es auszuführen
Projekt-Dateien erstellen
Erstellen Sie eine neue Datei namens task_scheduler.sh mit einem beliebigen Texteditor. Sie können den folgenden Befehl verwenden, um die Datei zu erstellen:
cd ~/project
touch task_scheduler.sh
Öffnen Sie nun die Datei in Ihrem Texteditor.
Code hinzufügen, um geplante Aufgaben anzuzeigen
Installieren Sie Crontab, wenn es noch nicht auf Ihrem System installiert ist. Um Crontab zu installieren, führen Sie folgenden Befehl im Terminal aus:
sudo apt-get update
sudo apt-get install cron
Fügen Sie im Inneren der Datei task_scheduler.sh folgenden Code hinzu:
#!/bin/bash
## Funktion, um die geplanten Aufgaben anzuzeigen
list_tasks() {
echo "Geplante Aufgaben:"
crontab -l
echo
}
Dieser Code definiert eine Funktion namens list_tasks, die die geplanten Aufgaben mithilfe des Befehls crontab -l anzeigt.
Code hinzufügen, um eine neue Aufgabe hinzuzufügen
Unter dem zuvor hinzugefügten Code fügen Sie folgenden Code hinzu:
## Funktion, um eine neue Aufgabe hinzuzufügen
add_task() {
read -p "Geben Sie den Befehl oder das Skript ein, das ausgeführt werden soll: " command
read -p "Geben Sie den Zeitplan (stündlich, täglich, wöchentlich) ein: " schedule
read -p "Geben Sie alle zusätzlichen Parameter ein: " parameters
case $schedule in
hourly)
cron_schedule="0 * * * *"
;;
daily)
cron_schedule="0 0 * * *"
;;
weekly)
cron_schedule="0 0 * * 0"
;;
*)
echo "Ungültiger Zeitplan. Wählen Sie bitte stündlich, täglich oder wöchentlich."
return
;;
esac
## Fügen Sie die Aufgabe zur Crontab hinzu
(
crontab -l 2> /dev/null
echo "$cron_schedule $command $parameters"
) | crontab -
echo "Aufgabe erfolgreich geplant."
echo
}
Dieser Code definiert eine Funktion namens add_task, die den Benutzer auffordert, den Befehl oder das Skript einzugeben, das ausgeführt werden soll, den Zeitplan (stündlich, täglich oder wöchentlich) und alle zusätzlichen Parameter. Anschließend setzt es den entsprechenden Cron-Zeitplan basierend auf dem gewählten Zeitplan. Schließlich fügt es die Aufgabe zur Crontab hinzu, indem es den Befehl crontab -l verwendet.
Code hinzufügen, um eine Aufgabe zu entfernen
Unter dem zuvor hinzugefügten Code fügen Sie folgenden Code hinzu:
## Funktion, um eine Aufgabe zu entfernen
remove_task() {
read -p "Geben Sie den Befehl oder das Skript ein, das entfernt werden soll: " command
## Entfernen Sie die Aufgabe aus der Crontab
crontab -l | grep -v "$command" | crontab -
echo "Aufgabe erfolgreich entfernt."
echo
}
Dieser Code definiert eine Funktion namens remove_task, die den Benutzer auffordert, den Befehl oder das Skript einzugeben, das entfernt werden soll. Anschließend entfernt es die Aufgabe aus der Crontab, indem es den Befehl crontab -l verwendet.
Code für die Hauptmenuloop hinzufügen
Unter dem zuvor hinzugefügten Code fügen Sie folgenden Code hinzu:
## Hauptmenü-Schleife
while true; do
echo "Aufgabenplaner"
echo "1. Geplante Aufgaben auflisten"
echo "2. Eine Aufgabe hinzufügen"
echo "3. Eine Aufgabe entfernen"
echo "4. Beenden"
read -p "Geben Sie Ihre Wahl ein: " choice
echo
case $choice in
1)
list_tasks
;;
2)
add_task
;;
3)
remove_task
;;
4)
break
;;
*)
echo "Ungültige Wahl. Bitte versuchen Sie es erneut."
echo
;;
esac
done
Dieser Code setzt eine Hauptmenü-Schleife auf, die wiederholt ein Menü anzeigt und den Benutzer nach ihrer Wahl fragt. Basierend auf der gewählten Option ruft es die entsprechende Funktion (list_tasks, add_task oder remove_task) auf oder beendet die Schleife.
Datei speichern und schließen
Speichern Sie die Änderungen in der Datei task_scheduler.sh und schließen Sie den Texteditor.
Um das Skript ausführbar zu machen, führen Sie folgenden Befehl im Terminal aus:
chmod +x task_scheduler.sh
Dieser Befehl setzt die Ausführbarkeitsberechtigung für die Datei task_scheduler.sh.
Projekt ausführen
Um den Aufgabenplaner auszuführen, führen Sie folgenden Befehl im Terminal aus:
./task_scheduler.sh
Dieser Befehl führt das Skript task_scheduler.sh aus und startet den Aufgabenplaner. Folgen Sie den Anweisungen auf dem Bildschirm, um geplante Aufgaben aufzulisten, neue Aufgaben hinzuzufügen oder vorhandene Aufgaben zu entfernen.

Zusammenfassung
Herzlichen Glückwunsch! Sie haben das Aufgabenplaner-Projekt erfolgreich abgeschlossen. Sie haben ein Bash-Skript erstellt, das Ihnen ermöglicht, Aufgaben zu planen und zu verwalten. Das Skript bietet Optionen, um geplante Aufgaben aufzulisten, neue Aufgaben hinzuzufügen und vorhandene Aufgaben zu entfernen. Fühlen Sie sich frei, das Skript weiter anzupassen, um Ihren spezifischen Anforderungen zu entsprechen. Frohes Planen!



