gpt4 book ai didi

bash - 为什么我的 bash 脚本在循环结束时打印冒号?

转载 作者:行者123 更新时间:2023-11-29 09:38:06 24 4
gpt4 key购买 nike

我有以下 bash 脚本:

#!/bin/sh

num_loops=3

for i in `seq $num_loops`:
do
printf 'Iteration %s\n' $i
done

当我运行它时,我得到以下输出。

$ ./loop-test.sh
Iteration 1
Iteration 2
Iteration 3:

我想知道为什么脚本会在最后一次迭代结束时生成一个无关的冒号(“:”)?我知道变量“i”是一个字符串,但为什么“seq”命令中的最后一次迭代会附加冒号?

最佳答案

因为你告诉它使用一个:

for i in `seq $num_loops`:
^---

: 不是必需的,它成为命令行参数的一部分:

for i in 1 2 3:

在最后一次迭代中,$i = '3:',基本上。

关于bash - 为什么我的 bash 脚本在循环结束时打印冒号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28482851/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com