shell函数

函数的定义

函数名称() {

执行的代码块

}

function 函数名 {

执行的代码块

}

函数需要先定义,然后才能调用;调用函数时,只需要输入函数名即可;函数可以多次反复调用。

函数中定义的变量和shell中的变量不是一回事;函数中定义的变量,需要在调用函数时赋值或引用。函数中的变量和shell变量保持一致,需要在调用函数时和shell变量一致。

举例:

vim function.sh

#!/bin/bash

#function for using

fac () {

fac=1    #函数名和变量一般不要一样,否则会出现冲突

for((i=1;i<=$1;i++))    #C语言风格的for

do

  fac=$[$fac * $i]

done

echo "$1的阶乘是: $fac"  #取最终结果的值,放在for之后

}

fac $1  

fac  $2

fac  $3        #$1、$2、$3都位置参数,对于fac函数来说都是$1

sh function.sh  2  4  5

2的阶乘是:2

4的阶乘是:24

5的阶乘是:120

注意:函数的位置参数和shell的变量不一致

相关推荐