【问题标题】:How to iterate for loop with limiting sequence in fish shell如何在鱼壳中迭代具有限制序列的循环
【发布时间】:2016-07-08 21:26:15
【问题描述】:

我想限制 for 循环中的顺序。我所有的尝试都失败了。我做错了什么?

我认为这应该可行:

for x in ((seq 100)[50..55])
  echo $x
end

【问题讨论】:

  • 你可以试试这个,for x in {50..55};do echo $x ; done

标签: for-loop fish


【解决方案1】:

有鱼:

for i in (seq 50 55); echo "$i"; end

输出:

50 51 52 53 54 55

【讨论】:

  • 谢谢。你在鱼壳文档中找到了吗?
  • 你不会在那里找到它,因为seq 不是鱼——它是一个外部工具(参见type seq)。在 GNU/Linux 系统上,它是 GNU coreutils 的一部分。
【解决方案2】:

你有一对太多的括号。在鱼括号中执行 $(command)`command` 在 bash 或 zsh 中执行的操作。所以就做吧

for x in (seq 100)[50..55]
    echo $x
end

当然,对于这个特定的示例,您甚至不需要切片表示法,因为您只需告诉 seq 命令以所需值开始和结束。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-07-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-02
    • 1970-01-01
    相关资源
    最近更新 更多