Bash脚本问题:如何在while循环中让参数序号随shift同步递增?
解决Bash脚本序号递增问题
你需要添加一个计数器变量来跟踪当前的序号,每次循环时更新它。修改后的脚本如下:
#!/bin/bash echo "You have entered $# arguments:" count=1 while (($#)); do echo "#$count: $1" shift ((count++)) done
关键改动说明:
- 新增
count=1初始化计数器,从1开始计数 - 将固定的
#1替换为#$count,动态引用计数器的值 - 每次
shift后执行((count++)),让计数器自增1
这样运行脚本输入args2 one two three,就能得到你预期的输出:
You have entered 3 arguments: #1: one #2: two #3: three
内容的提问来源于stack exchange,提问作者waterscapes
相关产品推荐
相关产品推荐

