Devo citar duas vezes essas expansões de parâmetro?

0

o shellcheck fornece o seguinte aviso:

In myscript line 38:
        echo -e "blah/blah\n$(cat ${tmpdir}/${filename}.jpdf)" > "$tmpdir"/"$filename".jpdf
                                            ^-- SC2086: Double quote to prevent globbing and word splitting.

O comando em questão destina-se a inserir uma linha no início de um arquivo ${tmpdir}/${filename}.jpdf .

O aviso por verificação de shell faz sentido? Por quê?

Já citei duas vezes o argumento inteiro para echo -e e devo duplicar as cotações em dobro de${tmpdir} e ${filename} ?

Obrigado.

    
por Tim 04.02.2018 / 04:00

1 resposta

2

Sim, se você quiser evitar dividir e agrupar assim:

echo -e "blah/blah\n$(cat "${tmpdir}/${filename}.jpdf")" > "$tmpdir/$filename.jpdf"

Apenas aspas duplas internas. Quero dizer, dentro do $(…) que já é o dobro citado no exterior "$(…)"

    
por 04.02.2018 / 04:09

Tags