【Linux】函数与参数

函数的定义

函数的定义包括function命令、函数名、开/闭括号包括以及包含在一对花括号中的函数体。

(1) 函数定义

function fname()

{

Statements;

}

或者

fname ()

{

Statements;

}

或者

fname() { Statements; }

(2) 使用函数名即可调用函数

$ fname

(3) 含参数的函数调用

$ fname arg1 arg2

以下是函数的访问方法

#!bin/bash
fname()
{
	echo $1,$2;       #访问参数1和参数2
	echo "$@";        #以列表的方式一次性打印参数
	echo "$*";        #类似于$@,但所有的参数都被视为单个实体
	return 0;         #返回值
}

递归函数

递归函数可以调用自身的函数,这种函数必须要有退出条件,否则就会不断的生成自身,知道系统资源耗尽或是崩溃

F() { echo $1;F hello;sleep 1; }


读取命令返回状态

命令的返回值被保存在变量$?中

cmd;

echo $?;

返回的状态称为退出状态。它可用于确定命令执行成功与否。如果成功退出,那么退出状态为0,否则为非0

下面的脚本可以报告命令是否成功结束

#!bin/bash
eval $@
if [ $? -eq 0 ];
then
   echo "$CMD executed success"
else
   echo "$CMD executed failed"
fi
eval可读取一连串的参数,然后再依参数本身的特性来执行。


posted @ 2018-12-18 11:41  OLIVER_QIN  阅读(653)  评论(0编辑  收藏  举报