Estou tentando adicionar argumentos para uma chamada de comando dependem de outra variável. Por favor, veja o código de script do shell:
curl \
$([ -z "${title}" ] || echo --data-urlencode title=${title}) \
http://example.com
No exemplo, se titlenão for nulo, um argumento será adicionado a curl.
Isso não funciona corretamente se titlecontiver espaços. Também não consegui rodear $(...)entre aspas, porque, se titlefor nulo, produzirá um argumento vazio inesperado para curl.
O que devo fazer para que ele funcione conforme o esperado.