欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Shell学习(7)建立函数库

程序员文章站 2022-03-04 20:44:34
...

建立库函数

以获取Ip地址为例
1.在一个文件夹下创建库文件mylib1.sh,该函数获取网卡ip地址

#! /bin/bash
#获取传个函数的参数(网卡)的Ip

_getIp()
{
        local tmp r ip
        [ -z "$1" ] && return
        FUNREPLY=()
        tmp=$(ifconfig $1 | grep 'inet addr')
        r=${tmp/inet addr:/}
        ip=${r/ Bcast*/}
        FUNREPLY=($ip)
}

 FUNREPLY是一个数组变量

注:在命名时,函数名称第一个字符使用_(下划线),通常这样子表示系统函数

 

2.在例外新建一个文件作为测试文件func_use_libs.sh

#! /bin/bash

#调用/home/libs/下的mylib1.sh库函数

MYLIB_DIR="/home/libs"
if [ ! -d "$MYLIB_DIR" ] ;then
        MYLIB_DIR='.'
fi

. $MYLIB_DIR/mylib1.sh   #该处调用库文件,也可以用source来代替.

_getIp eth0              #调用库文件函数

ip=${FUNREPLY[0]}
if [ -n "$ip" ] ;then
        echo "主机IP是:$ip"
else
        echo "找不到IP"
fi

 .和source的作用是一样的,表示使用库函数文件。

相关标签: Bash