[GRUB4DOS] 一个很简单的外部命令

发表于

[功能说明]

用于菜单中,可以直接跳到另一个菜单项执行.

注:因为是调用fallback命令的功能

所以如果有使用fallback则使用这个命令之后之前的fallback设置就失效。

注: 这个只是演示一下GRUB4DOS外部命令的编写,在新版GRUB4DOS中已经直接支持

[下载地址]

http://grub4dos-chenall.googlecode.com/files/goto.zip

GRUB4DOS最新版本下载

http://code.google.com/p/grub4dos-chenall/

[使用方法]

例子:

default 1
 timeout 5

title 0.title 0
 pause title 0
#跳到菜单1.
 goto 1

title 1.title 1
 pause title 1
 #如果xxx.xxx文件存在跳到菜单2.
 ls /xxx.xxx && goto 2

title 2.title 2
 pause title 2

[其它说明]
必须配合grub4dos 0.4.5a 2010-01-21以后的版本使用.
很简单的一个功能。

源码只有两行^_^够简单吧。

  builtin_cmd("fallback",arg,flags);
  return !(errnum = MAX_ERR_NUM);

这里顺便解释一下GRUB4DOS中fallback命令的用法

fallback
fallback NUM 进入无人干预启动模式:如果默认启动入口项出错失败,立即用入口项 NUM 来启动(这里的“入口项”与 default 命令中的“入口项”意义相同)。

可以指定多个入口项比如
fallback 1 2 3 4
这样当启动出错失败就跳到第1个菜单处执行,第一个菜单执行过程中出错失败就继续进入第2个菜单….
如果到第4个菜单还是执行失败则,提示出错信息。

不加任何参数的fallback命令代表取消fallback的设置。

fallback可以用于智能控制GRUB4DOS的菜单的执行过程。

goto命令就是利用了fallback的原理。先指定一个入口,然后再返回一个失败信息。这样菜单指行时就会跳过去了。

希望本站内容对您有点用处,有什么疑问或建议请在后面留言评论
若无特别注明,本站内容均属原创,转载请注明作者(chenall)和出处 chenall's Blog ,请勿用于任何商业用途