%20da%20instru%C3%A7%C3%A3o%20para%20inser%C3%A7%C3%A3o%20de%20texto%20em%20uma%20linha%20espec%C3%ADfica.png)
Estou tendo problemas com o sed e vendo uma variável fornecendo uma instrução numérica para inserção de texto em uma linha específica.
aqui está o código funcional sem a variável:
sed -i '1i\NewLineHere\' ~/file/location/here.txt
Preciso alterar o número 1 para $var, mas com a letra 'i' permanecendo ao lado (sem espaço), embora não seja vista como parte da variável. Eu uso " " em vez de '' para que o sed consiga ver as variáveis corretamente, já tentei inúmeras tentativas diferentes e nenhuma funcionou. Um exemplo de como fica o problema sem qualquer tentativa de desconectar o 'i' da variável, mantendo-o próximo a ela:
sed -i "$vari\NewLineHere\" ~/file/location/here.txt
Agradecemos antecipadamente por quaisquer sugestões ou respostas
Responder1
É aqui que {}
a citação de nomes de variáveis é útil. No seu caso,${var}
Por exemplo:
$ var=100
$ echo $vari
$ echo ${var}i
100i
Eles {...}
atuam como um "escopo" para o nome da variável.
(Nota lateral: tenha cuidado com o \
personagem ao alternar entre '
e "
).