设置函数库并引用

简介: 首先建立一库文件目录,设为~/bin/lib,然后建立获得IP地址的函数,函数名用_getip(),文件名为mylib1.sh _getip(){    local tmp r ip    [ -z "$1" ] && return    FUNREPLAY=()    tmp=$(ifconfi...

首先建立一库文件目录,设为~/bin/lib,然后建立获得IP地址的函数,函数名用_getip(),文件名为mylib1.sh

_getip()
{
    local tmp r ip
    [ -z "$1" ] && return
    FUNREPLAY=()
    tmp=$(ifconfig $1 | grep 'inet6 地址')
    r=${tmp/inet6 地址:/}
    ip=${r/ Bcast*}
    FUNREPLAY=($ip)
}

在~/bin/getip2.sh中引用这个函数,首先必须判断库文件目录及文件是否存在,然后用source 文件名,或. 文件名来引入函数

$cat getip2.sh
#!/bin/sh

MYLIB_DIR="~/bin/lib"
if [ ! -d "$MYLIB_DIR" ]; then
    MYLIB_DIR='./lib'
fi

source $MYLIB_DIR/mylib1.sh
_getip eth0

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

执行

$bash getip2.sh

相关文章
|
3月前
|
存储 自然语言处理 Python
解密 Python 的作用域和名字空间
解密 Python 的作用域和名字空间
28 1
|
8月前
|
开发工具 C语言
调用外部函数库:加入链接的函数库
【5月更文挑战第14天】调用外部函数库:加入链接的函数库。
54 1
|
编译器
引用头文件的操作
引用头文件的操作。
47 0
|
Windows
使用dumpbin工具查看动态库中函数列表
使用dumpbin工具查看动态库中函数列表
1129 0
|
8月前
|
C++
win32编程 -- 动态库中声明类
win32编程 -- 动态库中声明类
36 0
|
网络协议 C# C++
关于 C#调用一个C/C++dll库运行时实现多个应用(静态变量区分) 的解决方法
关于 C#调用一个C/C++dll库运行时实现多个应用(静态变量区分) 的解决方法
关于 C#调用一个C/C++dll库运行时实现多个应用(静态变量区分) 的解决方法
|
API C语言 芯片
创建自己的函数库
创建自己的函数库
创建自己的函数库
goland 无法导入某些文件的变量、结构体、函数
goland 无法导入某些文件的变量、结构体、函数
|
编译器 程序员 C++
c++语言程序设计——头文件和引用系统头文件、用户头文件的定义及使用方法
c++语言程序设计——头文件和引用系统头文件、用户头文件的定义及使用方法
c++语言程序设计——头文件和引用系统头文件、用户头文件的定义及使用方法
|
存储 Python
11_python基础—函数(引用、全局、局部变量)
11_python基础—函数(引用、全局、局部变量)
214 0
11_python基础—函数(引用、全局、局部变量)