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