gpt4 book ai didi

bash - shell脚本中的for循环/if条件

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

我以前从未用过 shell 脚本,现在我遇到了一个简单的问题......我有一个 for 循环,每次运行 run.sh 脚本时都会执行。要查看脚本已经运行了多远,我想打印例如每 5000 个实际索引。

$counter = 0
for (( i = 0 ; i <= 5000; i++ ))do
if ($i = $counter); then
echo "$counter"
counter=$(counter+1000)
fi
./run.sh
done

运行这段代码会出现以下错误

./for_loop.sh: line 1: =: command not found
./for_loop.sh: line 3: 0: command not found

我也尝试用

初始化变量计数器
declare -i counter = 0

这给了我以下错误

./for_loop.sh: line 1: declare: `=': not a valid identifier

最佳答案

你真的不需要两个计数器。一个计数器就足够了:

for (( counter = 0; counter <= 5000; counter++ ))
do
if (( counter % 1000 == 0 ))
then
echo "$(( counter / 1000 ))"
fi
./run.sh
done

这将执行 run.sh 5000 次并每 1000 次迭代打印一次计数器值。请注意,% 是计算除法余数的模运算符,/ 是整数除法运算符。

关于bash - shell脚本中的for循环/if条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3422827/

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