首页 > 代码库 > shell从函数文件中调用函数
shell从函数文件中调用函数
碰到一个shell中函数调用的小问题,记录一下。
shell中函数有三种调用方式,一种是在文件前面定义函数,然后在下面直接调用;一种是通过载入shell,在shell中直接调用;第三种是将函数写入文件,然后在其他shell中调用函数。
这里写一下关于第三种方法的例子:
is_it_a_directory() { if [ $# -lt 1 ];then echo "is_it_a_directory:I need an argument" return 1 fi _DIRECTORY_NAME=$1 if [ ! -d $_DIRECTORY_NAME ];then return 1 else return 0 fi } error_msg() { echo -e "\007" echo $@ echo -e "\007" return 0 }
这个文件定义了两个函数,我们在下面的shell中调用者两个函数,这里有一点需要注意,在调用之前,要载入函数文件,载入的方式为 . /路径,注意有个空格
#!/bin/sh . functions.sh echo -n "enter destination directory :" read DIREC if is_it_a_directory $DIREC then : else error_mag "$DIREC does not exist...creating it now" mkdir #DIREC > /dev/null 2>&1 if [ $? != 0 ]; then error_msg "could not " exit 1 else : fi fi echo "extracting files..."
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。