答案1
除了共享名称之外,我认为这两个概念彼此没有任何关系。
但是,如果您正在 bash 中寻找类似于您链接的维基百科文章中的 Ruby 示例的内容:
(1..10).each do |x|
puts x if (x == 4 .. x == 6)
end
bash 中的一个版本是:
#!/bin/bash
do_print="false"
for ((i = 1; i <= 10; ++i)); do
if [[ ${i} -eq 4 ]]; then
do_print="true"
fi
if [[ "${do_print}" == "true" ]]; then
echo "${i}"
fi
if [[ ${i} -eq 6 ]]; then
do_print="false"
fi
done
变量do_print
在 时“翻转” i=4
,在 时“翻转”关闭i=6
。 Bash 没有像 Ruby 那样的语法糖来做到这一点。