Bash:可选地将参数传递给命令


21

我试图将参数添加到命令调用取决于另一个变量。请查看shell脚本代码:

curl \
  $([ -z "${title}" ] || echo --data-urlencode title=${title}) \
  http://example.com

在示例中,如果title给定的值不为null,则会将参数添加到curl

如果title包含空格,这将无法正常工作。同样,我也不$(...)能用引号引起来,因为如果title为null,它将产生意外的空参数curl

我应该怎么做才能使其按预期工作。

Answers:


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.