[Shell] 셸 은 반환 값 을 가 진 함수 입 니 다.

1003 단어 Shell
셸 에서 함수 호출 방식 은 두 가지 가 있 습 니 다.
방식 1: 함수 의 모든 표준 출력 이 주 프로그램의 스칼라 에 전 달 됩 니 다.
value_name=`function_name [arg1 arg2 ......]`
Demo:
#!/bin/bash

#      fun_countfiles1
fun_countfiles1(){
	let "filenum=0"
	let "dirnum=0"
	for i in $( ls $1 );do
	{
		if [ -d $i ];then
			let dirnum+=1
		else
			let filenum+=1
		fi
	}
	done
	return $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_countfiles2
fun_countfiles2(){
	let "filenum=0"
	let "dirnum=0"
	for i in $( ls $1 );do
	{
		if [ -d $i ];then
			let dirnum+=1
		else
			let filenum+=1
		fi
	}
	done
	echo ${filenum}
}
declare filenum2=`fun_countfiles2 '/data01/message/sgs/sgs_2016071410*'`
echo "filenum2:"${filenum2}
unset filenum2

좋은 웹페이지 즐겨찾기