editando o valor de GRUB_CMDLINE_LINUX_DEFAULT através do script bash

2

Eu quero acrescentar fastboot ao final do valor existente da variável GRUB_CMDLINE_LINUX_DEFAULT em / etc / default / grub não manualmente, mas usando o script bash e o comando echo . O problema é que os valores iniciais dessa variável são diferentes em máquinas diferentes, então não sei qual algoritmo de busca usar para localizar onde o valor da variável termina. Quero mostrar como anexar fastboot diretamente ao valor existente.

    
por lakcic89 29.11.2017 / 11:07

1 resposta

1

Não faço ideia de como isso é puro bash, mas normalmente uma pesquisa e uma substituição podem ser feitas em awk ou sed .

sed -i 's/^GRUB_CMDLINE_LINUX_DEFAULT.*/& fastboot/'  /etc/default/grub

-i : faça uma substituição no local

Seguido pela busca e substituição da sintaxe s/REGEXP/REPLACEMENT/

^GRUB_CMDLINE_LINUX_DEFAULT.* : um EXPRESSION REGULAR que corresponde às linhas que iniciam ^ com GRUB_CMDLINE_LINUX_DEFAULT e qualquer número de caracteres após essa sequência: .*

& fastboot : a sequência de REPLACEMENT na qual o caractere & do unescaped faz referência ao porção inteira correspondente do espaço padrão (ou seja, seja qual for o REGEXP correspondido, neste exemplo: a linha inteira) e anexar fastboot

    
por 29.11.2017 / 11:33

Tags