零基础学习云计算及大数据DBA集群架构师Linux Bash Shell编程及系统自动化2015年1月13日周三

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了零基础学习云计算及大数据DBA集群架构师Linux Bash Shell编程及系统自动化2015年1月13日周三相关的知识,希望对你有一定的参考价值。

函数
1.作用  1) 反复调用某段代码
        2) 对代码段分类.
2.设置
函数名 () 
{
     代码的主体
}
3.函数的使用
函数名


4.返回值
使用$?查看返回值  0代表的是正确, 非零代表的是不正确.
函数的返回值指的是函数结束后需要返回给调用者的值.
使用return 跟上数字  去指定返回值

5.函数的位置参数
$1指的是传递给函数的第一个参数
$2指的是传递给函数的第二个参数..
fun () 
{
        echo $1
        echo $2
        echo $3
}
result=$(fun 1 2 3)
echo $result

[[email protected] ~]# bash canshu1.sh 
1 2 3



6.例子
#!/bin/bash
SHELL_LIKE ()
{
        case $1 in
                yes)
                        return 0 ;;
                no)
                        return 1 ;;
                *)
                        return 1 ;;
        esac
}
#for i in {1..99}
#do

read -p "do u like shell? " rep
if SHELL_LIKE "$rep"
then
        echo "me,too" && exit
else
        echo "input error,retry"
fi
#done

7.全局变量和局部变量.
全局变量:是针对脚本所有内容生效的变量
局部变量: 是只针对于函数内的代码段生效
局部变量的定义方法 local a=1


题目:
bash  xxxx.sh  输入-t 5 代表画三角形5行
            -l 7 代表的是画斜线7行

#!/bin/bash
TRIANGLE () 
{
for x in $(seq 1 $1)
do
        for y in $(seq 1 $(($1 - $x)))
        do
                echo -n " "
        done
        for z in $(seq 1 $((2*$x -1)))
        do
                echo -n "&"
        done
echo
done
}

LINE () 
{
for i in $(seq 1 $1)
do
        for x in $(seq 1 $i)
        do
             echo -n " "
        done
echo -n "^"
echo
done
}

case $1 in
        -t)
        TRIANGLE "$2" ;;
        -l)
        LINE "$2" ;;
esac
~     

 

以上是关于零基础学习云计算及大数据DBA集群架构师Linux Bash Shell编程及系统自动化2015年1月13日周三的主要内容,如果未能解决你的问题,请参考以下文章

零基础学习云计算及大数据DBA集群架构师Linux系统配置及网络配置2015年12月28日周一

零基础学习云计算及大数据DBA集群架构师Linux系统环境及权限管理2015年12月24日周四

零基础学习云计算及大数据DBA集群架构师Linux系统网络服务及安全配置1.4-1.8

零基础学习云计算及大数据DBA集群架构师Linux系统环境及权限管理2015年12月25日周五

零基础学习云计算及大数据DBA集群架构师Linux系统配置及网络配置2015年12月30日周三

零基础学习云计算及大数据DBA集群架构师Linux系统配置及网络配置2015年12月31日周四