如何知道传递给 shell 脚本的参数数量减一?

如何知道传递给 shell 脚本的参数数量减一?

我想知道如何指示传递给 shell 脚本的参数数量减 1。我尝试了以下方法:${#-1},但不起作用。有人能帮我吗?谢谢您的回答。

答案1

您可以使用算术扩展语法使用变量执行计算,并从中获取脚本或当前函数的参数数量$#

count_minus_one=$(( $# - 1 ))

echo "$count_minus_one"

最好先将所有参数的数量分配给自定义变量,如果您想要任意数组的长度而不是脚本/函数参数数量,则尤其需要这样做,因为您无法在算术扩展中进行正确的变量扩展。这看起来像:

all_count=$#
count_minus_one=$(( all_count - 1 ))

echo "$count_minus_one"

相关内容