Linux
发布时间:2022-03-31 发布网站:大佬教程 code.js-code.com
大佬教程收集整理的这篇文章主要介绍了14、位置参数+随机数+数组+函数,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
概述
位置参数: linux 程序中会大量用到位置参数,位置参数就形如: mkdir a b c d e f g 在以上程序中 mkdir 它自己也是一个参数,它个参数用 $0 表示 后面的参数用 $1 (a) $2(b) $3 (c) 最多到 $10,如果超10,那要用 shift 进行参数移位 参数移位 参数移位就是把后面(右边)的参数,往前(左边)移动,最前面(左边)的参数 覆
位置参数:
linux 程序中会大量用到位置参数,位置参数就形如:
mkdir a b c d e f g
在以上程序中 mkdir 它自己也是一个参数,它个参数用 $0 表示
后面的参数用 $1 (a) $2(b) $3 (c)
最多到 $10,如果超10,那要用 shift 进行参数移位
参数移位
参数移位就是把后面(右边)的参数,往前(左边)移动,最前面(左边)的参数
例:
a b c d e f g h
||
|| shift
b c d e f g h
c d e f g h
d e f g h
位置参数的表示:
$0 程序本身
$1 - $10 第1个参数、第2个参数、第3个参数...第10个参数
$# 参数个数
$* 所有参数
例:写程序,打印输入指定个数的指定字符
如: xxx * 5 --打5个*,xxx 是你的程序名
xxx # 10 --打10个#,xxx 是你的程序名
RANDOM
echo $RANDOM
echo $[$RANDOM%101]
echo $[$RANDOM%51+50]
数組
具有相同的名字,不同下票变量集合,如 a[1] a[2] ......
方法一:把所有值用小括号括起(值间空格分形),赋給一个变量
如: a=(1 2 3 a b c)
使用:使用它的具体元素,如: echo ${a[0]} echo ${a[5]}
如:b[1]=5
b[10]=8
下标值查看:
echo ${b[*]} 显示所有值,但不会显示下标个数,和下标序号
echo ${#b[*]} 看有多少个值
命令行可以通过set 来看
定义数组:a=(1 2 3 4 .... X Y Z # ^ _)
利用随机数作数组下标取数: echo ${a[$n]}
在shell程序时,经常会遇到反复使用相同或相近的代码段,那这里我们可以将这些代
函数的优点在于,1、让主程序变得简短。2、方便维护。
FUNCTION function_name() {
}
function_name() {
2、使用return返回值,只能返回 0-255
add() {
sum=$[$1+$2]
return $sum
}
read -p "输入第二个数: " y
add $x $y
echo "x+y=$?"
add2 () {
echo $sum
add2 $x $y
echo "x+y=`add2 $x $y`"
是从它的定义处,到程序末尾
局部变量
局部变量的作用范围:只在定义它的函数有效,一般来讲函数中的变量都应该声明为局部变量
FUNCTION 关键字
function my_print() {
commands
也可以
my_print() {
commands
n=1
while [ $n -le $1 ]
do
echo -n "*"
n=$[$n+1]
done
my_print 5
my_print 5 "*"
my_print 10 "#"
要点:
1、必须有个变量终值时的处理
function jx() {
local n
if [ $1 -eq 1 ]
then
else
n=$[$1*`jx $[$1-1]`]
fi
echo $n
s=`jx 5`
echo "5的阶乘是: $s"
大佬总结
以上是大佬教程为你收集整理的14、位置参数+随机数+数组+函数全部内容,希望文章能够帮你解决14、位置参数+随机数+数组+函数所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。