Shasteriskt,一个替代“SHIFT”解决方案的选择是创建一个脚本来执行一些移动操作。我的意思是创建一个名为
grub.bak
的文件,它是你的
grub.cfg
文件的精确副本,唯一的区别是将
set timeout=0
行更改为
set timeout=10
,例如。创建一个shell脚本,根据你的需求允许你重新启动。我创建了一个等效的Python脚本来满足这些要求,但当然需要使用
sudo
调用。我只是将它放在我的设置中的
/usr/bin
目录下,作为指向实际脚本本身的符号链接。
注意:我在Arch上运行fluxbox,所以不确定这个脚本和Ubuntu之间是否有任何差异,但应该几乎没有修改。脚本如下:
#! /usr/bin/python
from shlex import split
from subprocess import call
from os import rename, chdir
chdir('/boot/grub/')
try:
with open('grub.bak','r') as alternate:
pass
if raw_input('Auto-boot is set. Un-set?> ') == 'y':
rename('grub.cfg','grub.back')
rename('grub.bak','grub.cfg')
if raw_input('Reboot system?> ') == 'y':
call(split('shutdown -r now'))
except:
if raw_input('Auto-boot is not set. Set?> ') == 'y':
rename('grub.cfg','grub.bak')
rename('grub.back','grub.cfg')
if raw_input('Reboot system?> ') == 'y':
call(split('shutdown -r now'))
脚本基本上只是确定您是否有菜单要加载(自动启动或不启动)。根据其结果,它会询问您是否想要打开或关闭它,然后询问您是否想要重新启动。相反地,如果您希望它以相反的方式工作(即在Windows中),并且您已经设置了Windows以访问Linux中的文件,如果您愿意,也可以在该环境中运行相同的脚本。希望这能帮到您。