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的变量不一致

你可能感兴趣的:(shell函数)