0; i--)); do echo -n "\" Hello $i \" , "; done 显示结果 " Hello 1-6ren">
gpt4 book ai didi

linux - 如何在 shell 循环结束时删除 ","?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:07:59 25 4
gpt4 key购买 nike

我是shell脚本语言的新手

我试着写这个循环

for ((i=100; i>0; i--));
do
echo -n "\" Hello $i \" , ";
done

显示结果

" Hello 100 " , " Hello 99 " , ... " Hello 1 " , <<

但在文本末尾有","

如何改进我的代码以将其删除。

谢谢

最佳答案

在项目之前打印分隔符,分隔符初始应为空,然后在第一次迭代后无条件设置。它明确、易于理解且高效。

sep=
for ((i=100; i>0; i--)); do
echo -n "$sep\" Hello $i \""
sep=" , "
done

正如@CharlesDuffy 所建议的,您可以使用 printf(bash 内置函数)代替 echo -n

sep=
for ((i=100; i>0; i--)); do
printf "$sep\" Hello $i \""
sep=" , "
done

关于linux - 如何在 shell 循环结束时删除 ","?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42737420/

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