Initial commit
This commit is contained in:
42
boot-to-windows.sh
Normal file
42
boot-to-windows.sh
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Ermitteln, ob grub oder grub2 verwendet wird
|
||||||
|
if [[ -d "/boot/grub2" ]]; then
|
||||||
|
GRUB_DIR="/boot/grub2"
|
||||||
|
elif [[ -d "/boot/grub" ]]; then
|
||||||
|
GRUB_DIR="/boot/grub"
|
||||||
|
else
|
||||||
|
echo "Weder grub noch grub2-Konfigurationsordner gefunden!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Suche die GRUB-Konfigurationsdatei
|
||||||
|
GRUB_CFG="$GRUB_DIR/grub.cfg"
|
||||||
|
if [[ ! -f "$GRUB_CFG" ]]; then
|
||||||
|
echo "GRUB-Konfigurationsdatei nicht gefunden!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Suche den GRUB-Eintrag für Windows dynamisch
|
||||||
|
WINDOWS_ENTRY=$(grep -i "Windows Boot Manager" "$GRUB_CFG" | head -n 1 | awk -F\' '{print $2}')
|
||||||
|
|
||||||
|
# Überprüfen, ob der Eintrag gefunden wurde
|
||||||
|
if [[ -z "$WINDOWS_ENTRY" ]]; then
|
||||||
|
echo "Windows Boot Manager nicht gefunden!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Setze den nächsten Boot-Eintrag
|
||||||
|
echo "Gefundener Windows-Eintrag: $WINDOWS_ENTRY"
|
||||||
|
grub-reboot "$WINDOWS_ENTRY"
|
||||||
|
echo "GRUB wird beim nächsten Neustart in die Windows-Partition booten."
|
||||||
|
|
||||||
|
# Benutzerabfrage, ob direkt neugestartet werden soll
|
||||||
|
read -p "Soll das System jetzt direkt nach Windows neu starten? [Enter für Ja, andere Eingabe für Nein] " user_input
|
||||||
|
|
||||||
|
if [[ -z "$user_input" ]]; then
|
||||||
|
echo "Das System wird neu gestartet..."
|
||||||
|
reboot
|
||||||
|
else
|
||||||
|
echo "Neustart abgebrochen. GRUB bleibt für den nächsten Start auf Windows eingestellt."
|
||||||
|
fi
|
||||||
Reference in New Issue
Block a user