bash shell 函数参数:
参数在>=10的时候,$10取出的是错误的,需要用${10}
jagger@2004:~/working/bash$ cat func.sh
#!/bin/bash
get_argv(){
echo "argv[0]: $0"
echo "argv[1]: $1"
echo "argv[2]: $2"
echo "argv[9]: $3"
echo "argv[10]: $10"
echo "argv[10]: ${10}"
echo "argv[11]: ${11}"
}
#get_argv 1 2 3 4 5 6 7 8 9 100 200
#get_argv $*
get_argv $@
jagger@2004:~/working/bash$ ./func.sh 1 2 3 4 5 6 7 8 9 100 200
argv[0]: ./func.sh
argv[1]: 1
argv[2]: 2
argv[9]: 3
argv[10]: 10
argv[10]: 100
argv[11]: 200
参数处理 | 说明 |
---|---|
$# | 传递到脚本或函数的参数个数 |
$* | 以一个单字符串显示所有向脚本传递的参数 |
$$ | 脚本运行的当前进程ID号 |
$! | 后台运行的最后一个进程的ID号 |
$@ | 与$*相同,但是使用时加引号,并在引号中返回每个参数。 |
$- | 显示Shell使用的当前选项,与set命令功能相同。 |
$? | 显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误。 |