Você não pode incorporar uma variável dentro de aspas simples. Você poderia:
-
use aspas duplas em todo o script sed e escape com barra invertida para todas as aspas duplas dentro dele.
-
termine a cadeia entre aspas simples com uma variável
'
, aspas duplas e, em seguida, reinicie a cadeia entre aspas simples:
LINEB="word"
sed '/g id=\"..\"/a style=\"fill:'"$LINEB"';\"' file.txt > foo.txt