我找不到任何与 ${#} 在 shell 脚本中实际含义相关的引用,我的粗略猜测是它意味着传递给调用的最后一个变量,但并不完全确定。
答案1
不,这意味着位置参数的数量,与 相同$#
。例如下面的script.sh
#!/usr/bin/env sh
echo ${#}
会打印:
$ ./script.sh arg1 arg2 arg3
3
$ ./script.sh arg1 arg2 arg3 arg4
4
我找不到任何与 ${#} 在 shell 脚本中实际含义相关的引用,我的粗略猜测是它意味着传递给调用的最后一个变量,但并不完全确定。
不,这意味着位置参数的数量,与 相同$#
。例如下面的script.sh
#!/usr/bin/env sh
echo ${#}
会打印:
$ ./script.sh arg1 arg2 arg3
3
$ ./script.sh arg1 arg2 arg3 arg4
4