#!/bin/bash
dd if=./menu.lst of=./grldr bs=1 seek=259664
len=`cat ./menu.lst | wc -m`
seek=`echo $(($len+259664))`
dd if=./grldr of=./grldr bs=1 count=1 skip=259663 seek=$seek
grubmenu.exe是win下面的程序,找了半天,没发现有linux下面的菜单内置的工具,所以自己整了这个脚本.自己试了一下,暂时没什么问题,请各位大师看一下有没有隐患!
说明:
1.运行此脚本前,你得先cd到你放grldr和menu.lst目录下面去
2.259664这个数字可能只适应部分版本的grldr,最稳妥的办法是在WIN下用grubmenu先内置一下菜单,再用winhex去看你菜单的第一个字符,可以得到比较准确的值
3.len得到的是menu.lst字符数,本来第一行dd命令就好了的,不过我发现grubmenu内置的菜单会在最后面追加一个"00",也许是必须的吧,第二个DD命令就是做这事的.拷贝259663(为00)到最后 |