数组中能够存放多个值。Bash Shell 只支持一维数组(不支持多维数组)。linux
Shell 数组用括号来表示,元素用"空格"符号分割开,语法格式以下:shell
array_name=(value1 ... valuen)
2.数组经常使用操做
1)定义一个数组: myarray=(1 2 3 4 5);
2)读取数组的某一个元素 : 数组
echo${myarray[下标值]}
# 注意数组名称必须使用{} 括起来, 下标值从0开始编号;
3)数组元素的赋值:bash
myarray[下标值] xxx ;=
4)显示数组的全部元素:函数
echo${myarray[*]};
5)得到数组的长度(元素的个数):spa
echo${#array[@]}
echo${#array[*]} 或者 ;
6)删除一个数组元素:code
unset数组的遍历: myarray[下标值]
#!/bin/bash my_arry=(a b "c","d" abc) echo "-------FOR循环遍历输出数组--------" for i in ${my_arry[@]}; do echo $i done
1.常规方法输出数组的全部元素,并进行独立的处理。
用 ${myarray[*]} 直接输出的全部元素的个数,对数组元素进行独立操做的时候,不太方便,因此有必要。server
2.有时候不知道数组中元素的个数,所以数组的长度事先是不知道的,所以此时,须要动态的扩展数组长度与空间。
# 执行方法:脚本名server1 server2 server3 server...
# 得到全部参数存入数组
list=($*)
${#list[@]}
len=
shell和函数的定义blog
1.linux shell 函数
将一组命令集或语句造成一个可用的块, 这些语句块称为函数。io
2.shell 函数的组成
函数名:函数名字,注意一个脚本中函数名要惟一,不然会引发调用函数紊乱。
函数体: 函数内部命令的集合,实现一个业务的功能。
3.shell 函数定义的格式
function 函数名()
# function能够省略,注意()内部不带任何参数。
{
命令1
命令2
. . .
}
四要素:
1.函数定义及引用实例一: 最简单的定义及引用
#function能够去掉,注意括号里不能有参数function print_welcome()
{
echo"演练函数的定义及引用方法:"
echo"welcome,now time is `date`"
}
#函数的名字,调用print_welcome
2.函数定义及引用实例二:向函数传递参数演练
向函数传递参数就像在通常脚本中使用特殊变量1, 2 … $ 9同样,函数取得所传参数后,最好先在函数内从新设置变量保存所传的参数。
程序功能:向函数传递一个变量值,对该变量值进行相关的运算,并输出结果。
sumfunction()
{
$1 a1=
$2 a2=
echo"演练函数内参数的传递的方法"
if$#-eq2#若是参数的个数等于2 []
then
echo"符合函数要求的参数个数"
let sum=a1+a2
else
echo"函数要求的参数个数不符,请从新输入..."
fi
echo"$a1+$a2=$sum"
}
1090#函数名和两个参数,调用sum
3.函数文件和脚本文件不在同一个文件中
#注意格式:点 空格 函数文件地址. ./func_3.sh