gpt4 book ai didi

linux - 为什么无法在函数中获取shell脚本的参数计数

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:19:57 26 4
gpt4 key购买 nike

我很困惑为什么不能在函数中获取脚本的参数计数,有人可以帮助我吗?提前致谢:)
test.sh

#!/bin/bash
check(){
echo $#
if [ $# -lt 2 ]; then
echo "Argument missing"
exit 1
fi
}
echo $#
check

运行:

./test.sh aa bb

输出:

2
0

最佳答案

函数有自己的参数变量本地副本,包括$#。它们与函数 的参数相关,脚本级别的等价物被隐藏。如果您想获取脚本的参数变量,则需要先将它们存储在其他地方或将它们传递给函数。

check "$@"

关于linux - 为什么无法在函数中获取shell脚本的参数计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29038053/

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