对不起这个问题的错误措辞,真的不能想出一个体面的说法。
问题: 我希望显示某个序列,并给出一个数字,例如19。
$ echo 19 | seq 1 2 [从这里输入管道]
所以我希望序列从1开始,增量为2,直到达到输入数字19。 而且我不知道该怎么做,虽然它可能很容易,但我仍然对shell很新。
PS:对不起,如果这是重复的,我在15分钟搜索后找不到我要找的东西。
答案 0 :(得分:1)
我不确定您是否可以将参数传递到seq
。但是有可能获得命令的输出并在seq
中使用它。
你可以使用这个
e=$(echo 19) && seq 1 2 "$e"
更简单的方法是:
seq 1 2 $(echo 19)
在这种情况下,这将运行一个命令echo 19
,并将其分配给变量e
。仅当此分配成功时,才会运行下一个命令(这由&&
确保)。然后,下一个程序将通过"$e"
将该变量用作参数。在这种情况下,双引号不是必需的,但它们可能在此方法的其他一些情况下很有用。