93 lines
3.3 KiB
Bash
Executable File
93 lines
3.3 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Farbdefinitionen
|
|
RESET="\033[0m"
|
|
BOLD="\033[1m"
|
|
RED="\033[31m"
|
|
GREEN="\033[32m"
|
|
YELLOW="\033[33m"
|
|
CYAN="\033[36m"
|
|
MAGENTA="\033[35m"
|
|
BLUE="\033[34m"
|
|
|
|
# Funktion zur Anzeige der Mitschrift und der Erklärung zu den Befehlen
|
|
show_help() {
|
|
echo -e "${CYAN}${BOLD}Wähle einen Befehl aus:${RESET}"
|
|
echo -e "${GREEN}1) Zeile löschen${RESET}"
|
|
echo -e "${GREEN}2) Zeile ersetzen${RESET}"
|
|
echo -e "${GREEN}3) Zeile hinzufügen (nach einer bestimmten Zeile)${RESET}"
|
|
echo -e "${GREEN}4) Zeile am Anfang der Datei hinzufügen${RESET}"
|
|
echo -e "${GREEN}5) Zeile am Ende der Datei hinzufügen${RESET}"
|
|
echo -e "${RED}6) Beenden${RESET}"
|
|
}
|
|
|
|
# Funktion für Zeile löschen
|
|
zeile_loeschen() {
|
|
echo -e "\n${MAGENTA}## Zeile löschen${RESET}"
|
|
echo -e "Befehl: Lösche eine bestimmte Zeile (z.B. Zeile 3)"
|
|
echo -e "sed -i '3d' dateiname"
|
|
echo -e "${CYAN}Erklärung:${RESET}"
|
|
echo -e "- '-i' ändert die Datei direkt."
|
|
echo -e "- '3d' bedeutet 'lösche die 3. Zeile'."
|
|
}
|
|
|
|
# Funktion für Zeile ersetzen
|
|
zeile_ersetzen() {
|
|
echo -e "\n${MAGENTA}## Zeile ersetzen${RESET}"
|
|
echo -e "Befehl: Ersetze den Inhalt einer bestimmten Zeile (z.B. Zeile 3)"
|
|
echo -e "sed -i '3s/.*/Neuer Text hier/' dateiname"
|
|
echo -e "${CYAN}Erklärung:${RESET}"
|
|
echo -e "- '3s' bedeutet 'ersetze in der 3. Zeile'."
|
|
echo -e "- '.*' bedeutet 'alles in der Zeile' (d.h., der gesamte Inhalt wird ersetzt)."
|
|
echo -e "- 'Neuer Text hier' ist der neue Inhalt für die Zeile."
|
|
}
|
|
|
|
# Funktion für Zeile nach einer bestimmten Zeile hinzufügen
|
|
zeile_hinzufuegen() {
|
|
echo -e "\n${MAGENTA}## Zeile hinzufügen (nach einer bestimmten Zeile)${RESET}"
|
|
echo -e "Befehl: Füge eine Zeile nach einer bestimmten Zeile hinzu (z.B. nach Zeile 3)"
|
|
echo -e "sed -i '3a Neuer Text, der hinzugefügt wird' dateiname"
|
|
echo -e "${CYAN}Erklärung:${RESET}"
|
|
echo -e "- '3a' bedeutet 'füge nach der 3. Zeile hinzu'."
|
|
echo -e "- 'Neuer Text, der hinzugefügt wird' ist der Text, der hinzugefügt wird."
|
|
}
|
|
|
|
# Funktion für Zeile am Anfang der Datei hinzufügen
|
|
zeile_am_anfang() {
|
|
echo -e "\n${MAGENTA}## Zeile am Anfang der Datei hinzufügen${RESET}"
|
|
echo -e "Befehl: Füge eine Zeile an den Anfang der Datei hinzu"
|
|
echo -e "sed -i '1i Neue Zeile am Anfang' dateiname"
|
|
echo -e "${CYAN}Erklärung:${RESET}"
|
|
echo -e "- '1i' bedeutet 'füge vor der 1. Zeile ein'."
|
|
echo -e "- 'Neue Zeile am Anfang' ist der Text, der hinzugefügt wird."
|
|
}
|
|
|
|
# Funktion für Zeile am Ende der Datei hinzufügen
|
|
zeile_am_ende() {
|
|
echo -e "\n${MAGENTA}## Zeile am Ende der Datei hinzufügen${RESET}"
|
|
echo -e "Befehl: Füge eine Zeile am Ende der Datei hinzu"
|
|
echo -e "sed -i -e '\$a Neue Zeile am Ende' dateiname"
|
|
echo -e "${CYAN}Erklärung:${RESET}"
|
|
echo -e "- '\$a' bedeutet 'füge nach der letzten Zeile hinzu'."
|
|
echo -e "- 'Neue Zeile am Ende' ist der Text, der hinzugefügt wird."
|
|
}
|
|
|
|
# Endlosschleife zur Auswahl der Befehle
|
|
while true; do
|
|
show_help
|
|
read -p "Wähle eine Option (1-6): " option
|
|
|
|
case $option in
|
|
1) zeile_loeschen ;;
|
|
2) zeile_ersetzen ;;
|
|
3) zeile_hinzufuegen ;;
|
|
4) zeile_am_anfang ;;
|
|
5) zeile_am_ende ;;
|
|
6) echo -e "${RED}Beende das Programm.${RESET}"; exit 0 ;;
|
|
*) echo -e "${RED}Ungültige Option. Bitte wähle eine Zahl von 1 bis 6.${RESET}" ;;
|
|
esac
|
|
|
|
echo -e "\nDrücke Enter, um fortzufahren..."
|
|
read
|
|
done
|