使用sed将grub条目中的root参数替换为分区号

时间:2018-04-19 11:02:18

标签: linux sed grub

我有以下grub.cfg

# Automatically created by OE
serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1
default=boot
timeout=10

menuentry 'boot'{
linux /bzImage LABEL=boot root=/dev/ram0  rootwait console=ttyS0,115200 console=tty0 
initrd /initrd
}

menuentry 'install'{
linux /bzImage LABEL=install-efi root=/dev/ram0  rootwait console=ttyS0,115200 console=tty0 
initrd /initrd
}

我需要用它的UUID替换root。

root_part_uuid=$(blkid -o value -s PARTUUID ${rootfs})
swupdate_part_uuid=$(blkid -o value -s PARTUUID ${swupdatefs})

当我执行以下sed命令时,它正在用相同的值替换两个根参数,我需要用以下

替换第一个根参数
sed -i "s/ root=[^ ]*/ root=PARTUUID=$root_part_uuid rw $rootwait quiet "  grub.cfg

使用swupdate_part_uuid的第二个根参数..我怎样才能实现这个...

0 个答案:

没有答案