Интерполировать в одинарных кавычках

GNU Awk часто устанавливается как gawk, с awk в качестве симлинка к нему в системах, где GNU установлен по умолчанию. Я бы предположил, что это относится к системам BSD и OS X, поскольку они уже имеют свои собственные awk.

if gawk '{ exit; }' < /dev/null 2> /dev/null
then
    echo "gawk available"
else
    echo "gawk not available"
fi
0
05.06.2018, 15:06
1 ответ

No puede interpolar dentro de comillas simples.

Puede poner la cadena entre comillas dobles y luego escapar de las comillas dobles literales:

COMMENT="A random comment"
TEXT_JSON="{\"person\" : \"Jim\",\"comment\" : \"$COMMENT\"}"
echo $TEXT_JSON | jq.
{  
  "person": "Jim",  
  "comment": "A random comment"  
} 

O, alternativamente, puede mantener las comillas simples para no tener que escapar nada, pero termine las comillas simples antes de la variable, luego use comillas dobles para la variable, luego comillas simples para la última parte de la cadena:

TEXT_JSON='{"person" : "Jim","comment" : "'"$COMMENT"'"}'
3
28.01.2020, 02:31

Теги

Похожие вопросы