shell 函数

2016-10-15

shell 函数

  函数就是把一段代码整合在了一个小单元中,并给这个小单元起了一个名字,当用到这段代码时直接调用这个小单元的名字即可。

  格式:

  function f_name() {
    command
  }

  函数必须放在最前面。

  例:

[root@133 ~]# vim function1.sh
#!/bin/bash

input(){
 echo $1
}

input aaa

  这个脚本就是一个非常简单的函数,函数名字为 input,它的作用就是输出参数 1 的内容。

[root@133 ~]# sh function1.sh
aaa

  加法运算:

[root@133 ~]# vim function2.sh
#!/bin/bash

sum(){
  s=$[$1+$2]
  echo $s
}

sum 1 2

  说明:sum 为一个加法运算函数,$1,$2 为第一个和第二个参数,sum 1 2 ,其实就是 1+2,最后 echo 出来它们的和。

  复杂一点的函数:

[root@133 ~]# vim function3.sh
#!/bin/bash

ip(){
  ifconfig|grep -A1 "$1"|tail -1|awk '{print $2}'|awk -F ':' '{print $2}'
}
read -p "Please input the eth name:" e
myip=`ip $e`

echo "$e address is $myip"

  说明:ip 函数其实就是通过 grep 和 awk 把网卡的 ip 给截取出来,只不过网卡的名字是让用户自己输入的。

[root@133 ~]# sh function3.sh
Please input the eth name:eth0
eth0 address is 192.168.56.133