多个脚本调用同一个函数的方法

来源:互联网 发布:移动端网页聊天室源码 编辑:程序博客网 时间:2024/05/22 23:59

单个脚本函数可以减少输入量,但如果多个脚本要使用多个同样的函数该怎么办?

在bash shell里可以创建函的库文件,类似于编程里调用库函数一样。

首先要创建公共库文件,把自己要调用的函数写在里面,如下所示:

#my script functionsfunction add {    echo $[$1 + $2]}function mul {    echo $[$1 * $2]}function div {    if [ $2 -eq 0 ]    then        echo "cuowu"    else        echo $[$1 / $2]    fi}
写好之后怎么去调用库文件?

我们可以使用source命令俗称点操作符,为了在咱们的脚本里调用库文件,只要添加如下命令(点和点之间有一个空格):

. ./myfuns
或者
source ./myfuns
myfuns是自定义库文件的名字,库文件要和和调用它的脚本在同一个目录下,如果不在就要加上绝对路径来访问库文件。

脚本实例如下:

#!/bin/bash#. ./myfunsval_1=10val_2=5result_add=`add $val_1 $val_2`result_mul=`mul $val_1 $val_2`echo "add is $result_add"echo "mul is $result_mul"
运行结果:

[root@localhost ~]# ./fun add is 15mul is 50


我们还可以在.bashrc或/etc/bashrc里用以上方法调用库文件,这样可以在命令行直接使用自定义函数,但一定要保证库文件的路径,而且shell还将自定义的函数传递给子shell进程,对于所有在shell运行的脚本,自定义函数随之可用。(.bashrc对当前用户生效,/etc/bashrc对所有用户生效)




阅读全文
1 0