【发布时间】:2019-05-07 00:02:03
【问题描述】:
当我尝试在 BASH 中编写这个函数时
function Odds () for i in {1..${#@}..2} ; do echo $i; done
我期望像
这样的输出1 3 5...
取决于传递给函数的参数数量。
但有效的输出是扩展了 ${#@} 的字符串。
前
{1..5..2}
我有一些猜想,但是......任何事情......发生了什么以及如何避免这种情况并获得理想的输出?
【问题讨论】:
-
你试过shellcheck.net吗?
标签: bash loops for-loop expansion braces