【Shell】shell带有返回值的函数

来源:互联网 发布:mac上steam游戏装在哪 编辑:程序博客网 时间:2024/05/01 11:43

shell中函数调用方式有两种

方式1:函数的所有标准输出都传递给主程序的标量

value_name=`function_name [arg1 arg2 ......]`

Demo:

#!/bin/bash#定义一个函数fun_countfiles1fun_countfiles1(){let "filenum=0"let "dirnum=0"for i in $( ls $1 );do{if [ -d $i ];thenlet dirnum+=1elselet filenum+=1fi}donereturn $filenum}fun_countfiles1 '/data01/message/sgs/sgs_2016071410*'declare filenum1=$?echo "filenum1:"${filenum1}unset filenum1

方式2:获取函数返回的状态

function_name [arg1 arg2 ......]

echo $?

Demo:

#!/bin/bash#定义一个函数fun_countfiles2fun_countfiles2(){let "filenum=0"let "dirnum=0"for i in $( ls $1 );do{if [ -d $i ];thenlet dirnum+=1elselet filenum+=1fi}doneecho ${filenum}}declare filenum2=`fun_countfiles2 '/data01/message/sgs/sgs_2016071410*'`echo "filenum2:"${filenum2}unset filenum2


0 0
原创粉丝点击