Thread: help with a script
in big script of mine need execute following command:
using variables script. when executing code (here sample of section in script should do):code:sudo efibootmgr --create --gpt --disk /dev/sda --part 1 --write-signature --label "grub" --loader "\\efi\\grub\\grub.efi"
will execute efibootmgr this:code:#!/bin/bash set -x -e grub2_uefi_name="grub" efisys_part_device="$(grub-probe --target=device /boot/efi/efi/grub/grub.efi)" efisys_parent_device=${efisys_part_device:0:8} efisys_part_num=${efisys_part_device:8:1} sudo efibootmgr --create --gpt --disk ${efisys_parent_device} --part ${efisys_part_num} --write-signature --label ${grub2_uefi_name} --loader "\\efi\\${grub2_uefi_name}\\${grub2_uefi_name}.efi"
but need here:code:sudo efibootmgr --create --gpt --disk /dev/sda --part 1 --write-signature --label grub --loader '\efi\grub\grub.efi'
it have brackets before , after grub.code:sudo efibootmgr --create --gpt --disk /dev/sda --part 1 --write-signature --label grub --loader '\efi\grub\grub.efi'
, here
it like: (with brackets , 2 slashes).code:sudo efibootmgr --create --gpt --disk /dev/sda --part 1 --write-signature --label grub --loader '\efi\grub\grub.efi'
i tried many variations don't know how should execute in script described.code:"\\efi\\grub\\grub.efi"
try add 2 more backslashes, , pair of escaped double-quotes:
code:sudo efibootmgr --create --gpt --disk ${efisys_parent_device} --part ... --loader "\"\\\\efi\\\\${grub2_uefi_name}\\\\${grub2_uefi_name}.efi\""code:$ grub2_uefi_name="grub" $ set -x $ echo "\"\\\\efi\\\\${grub2_uefi_name}\\\\${grub2_uefi_name}.efi\"" + echo '"\\efi\\grub\\grub.efi"' "\\efi\\grub\\grub.efi" $
Forum The Ubuntu Forum Community Ubuntu Official Flavours Support General Help [ubuntu] help with a script
Ubuntu
Comments
Post a Comment