分类: LINUX
2011-04-26 12:33:09
Shell 函数定义,在调用一个函数之前必须先定义。
#!/bin/bash
foo(){
echo "hello word!"
}
echo "script start"
foo
echo "script ended"
2、使用local关键字在shell函数中声明局部变量
#!/bin/bash
test="global"
foo(){
local test='local'
echo $test
}
echo $test
foo
echo $test
3、从函数中返回一个值
#!/bin/bash
yes_or_no(){
echo "is you name $*?"
while true
do
read name
case $name in
y|Y|yes)
return 0;;
n|N|not)
return 1;;
*)
echo "answer yes no" ;;
esac
done
}
if yes_or_no $1
then
echo "hello $1"
else
echo "sorry"
fi
参数扩展
${param:-default} 如果param为空,就把它设置为default
${#param} 给出param的长度
${param%word} 从param的尾部删除与word匹配的最小部分,然后返回剩余部分
${param%%word} 从param的尾部删除与word匹配的最长部分,然后返回剩余部分
${param#word} 从param的头部删除与word匹配的最小部分,然后返回剩余部分
${param##word} 从param的头部删除与word匹配的最小部分,然后返回剩余部分
各种参数匹配操作符的用法:
#!/bin/bash
unset foo
echo ${foo:-bar}
f00=fud
echo ${foo:-bar}
foo=/usr/bin/X11/startx
echo ${foo#*/}
echo ${foo##*/}
bar=/usr/local/etc/local/networks
echo ${bar%local*}
echo ${bar%%local*}
exit 0
一小时——第一部分:Linux&Shell