我想编写一个 shell 脚本来启动到 Windows,而无需等待正常的 grub 超时。
该命令不得更改 grub-timeout 的默认值,因为我仍然想在下次启动时选择 Linux 或 Windows。
就像是:
#!/bin/bash
sudo grub-reboot 2
# set timeout 0 temporarily
sudo reboot
答案1
对于任何未来的读者,解决方案如下:
#!/bin/bash
sudo efibootmgr -n [x]
sudo reboot
其中 [x] 是 Windows 启动管理器的索引(通常为 0),您可以通过运行找到它
efibootmgr -d -d
不幸的是,设置下次启动似乎需要 sudo,因此即使您在 .zshenv 或 .bash_profile 中设置了别名或函数,您仍然需要输入密码。
感谢@MarcusMüller 为我指明了正确的方向。