以下是引用不点在2004-4-23 15:22:32的发言:
/y 参数不是以空格开头, 而是以斜杠开头. 比较罗嗦了. 这很明显是微软的一个 BUG, 空格应当放在斜杠之前, 它却放在斜杠和 y 的后面了.
如果命令行是这样的:
--config-file=(hd0,0)/boot/grub/menu.lst/y /p /d /k AUTOEXEC
就不好了. 注意: (hd0,0)/boot/grub/menu.lst/y 会被认为是路径, 这是一个失败的路径.
我看了一下,命令行将不是像上面那样的,即:
--config-file=(hd0,0)/boot/grub/menu.lst/y /p /d /k AUTOEXEC
而是这样的:
/y --config-file=(hd0,0)/boot/grub/menu.lst /d /k AUTOEXEC
也就是说,/y将紧帖着GRUB.EXE,即:GRUB.EXE/y --config-file=xxx /d /k AUTOEXEC
而通常SHELL用COMMAND.COM时则成为这样的形式:
COMMAND.COM/y /d /k AUTOEXEC
比如当为/p /e:640时,那么,总的命令行即:
COMMAND.COM/y /p /e:640 /d /k AUTOEXEC
而这是正确的,所以也算不上是MS的BUG。只是当将COMMAND.COM换成GRUB.EXE,当使用Step-by-step mode时,总的命令行就成了这样的形式:
GRUB.EXE/y /d /k AUTOEXEC
所以我想的话,将紧帖着GRUB.EXE后的/y参数忽略,并将--config-file参数后的空格加斜杠也忽略,那应该就可以了吧。