一、特殊类型的变量
shell下默认的变量类型为字符串类型
1,数值类型
如果进行数值运算,有这么几种方法

方法一: declare -i sum sum=100+200 echo $sum 方法二: sum=$[100+200] 方法三: ((sum=100+200))
2,数组类型
这部分知识不少,详细的可以参考这个链接:http://bbs.chinaunix.net/thread-1779167-1-1.html
二、函数相关
1,函数的创建
有两种方式:
function func_name{
}
func_name(){
}
调用的时候: func_name [参数列表]
2,函数传参
参数列表传入的参数,和shell脚本类似,$0代表函数名称,$#代表参数个数,$1...代表具体参数
3,函数返回值
默认是最后一条语句的退出码,可以利用return 返回1-255;也可以利用echo 返回任意
4,函数中的变量
全局变量:默认情况下,shell脚本中的变量,不论在函数内还是函数外定义,都是全局变量(这点和其他的编程语言都不同!)
局部变量,在函数内利用local进行声明,
其他关于函数的高级问题:诸如如何向函数传递数组变量,函数如何返回数组变量,如何创建shell库文件(利用source或者.运行),如何在命令行创建函数(;)。用到的时候再去看吧《linux命令行与shell脚本编程大全(第二版)》