2.函数

函数


定义
myfunc()  函数名称加() 不用加参数
{  
    ls
    pdw
}


myfunc   调用函数


在脚本中调用其他脚本中的函数
. /脚本路径/脚本    调用脚本
myfunc             调用函数




函数中的变量


myfunc(){
    a=20
    echo $a
}
myfunc
echo $a              


打印两次20 函数中的变量在函数外仍有效 
若要变量只在函数内部生效,可在变量声明时加local关键字


myfunc(){
    a=20
    echo $a
}
echo $a
myfunc


打印一次20 在函数myfhunc执行前变量a没有值,只打印函数里面的那次


函数传参


在定义时的小括号中无法传参,需要利用位置变量进行传参
在函数体中 $1 $2 ... 调用参数
调用函数时直接在函数名后面加上传入的参数
例:
myfunc(){
    echo $1 
    echo $2 
}
myfunc 5 6




使用函数的例子


要求用户输入密码但是不显示密码


readpass(){
local pass=""
    stty -echo
    #echo -n "enter password:"           打印出提示内容
    echo
    read -p "enter password:" PASS       使用 -p 打印出后面的提示,将输入存入变量PASS
    echo $PASS
    stty echo
}
readpass




stty -echo 可以使输入不显示
stty echo 重新显示

猜你喜欢

转载自blog.csdn.net/choose_c/article/details/52607648
今日推荐