函数这样定义? 要定义一个函数,你只需写出他的名字,然后是一个空括号
- funciton_name () {
-
statement
-
}
一个很简单的函数事列- #!/bin/sh
-
foo() {
-
echo "funciton foo is executing"
-
}
-
-
echo "sricpt starting"
-
foo
-
echo "script ended"
-
-
exit 0
当一个函数被调用时,脚本程序的位置参数($* $@ $1 $2等)会被替换为函数的参数,这也是你读取传递给函数的参数的方法
当调用完后,这些参数会恢复为它们先前的值。
从函数中返回一个值脚本程序my_name演示了函数的参数是如何传递的,以及函数如何返回一个true或false的。
- #!/bin/sh
- #首先定义了函数
-
yes_or_no() {
-
echo "is it your name $1"
-
while true
-
do
-
echo -n "enter yes or no: "
-
read x
-
case "$x" in
-
y|yes|Y|YES) return 0;;
-
n|N ) return 1;;
-
* ) echo "answer yes or no"
-
esac
-
done
-
}
#住程序部分
-
echo "orginal paramters are $*"
- #函数传值
-
if yes_or_no "$1" #传入第一个参数
-
then
-
echo "hi $1,nice name"
-
else
-
echo "never remember"
-
fi
-
exit 0
函数调用:两种方式
1. 在一个脚本中调用函数
- #!/bin/bash
-
# third.sh
-
-
hello ()
-
{
-
echo "hello"
-
}
-
-
hello
2. 在其他脚本中调用
first.sh
- #!/bin/bash
-
-
# first.sh
-
-
hello ()
-
{
-
echo " helllo"
-
}
second.sh
- #!/bin/bash
-
# second.sh
-
-
. /home/ywx/desktop/linux_shell/first.sh
-
#调用first.sh脚本中的函数
-
hello
阅读(837) | 评论(0) | 转发(0) |