zoukankan      html  css  js  c++  java
  • shell编写一个判断脚本

                                                              shell编写一个判断脚本

    4.1问题

    本例要求在虚拟机server0上创建/root/foo.sh脚本,任务目标如下:

    当运行/root/foo.sh redhat,输出为fedora

    当运行/root/foo.sh fedora,输出为redhat

    当没有任何参数或者参数不是redhat或者fedora时,其错误输出产生以下信息:/root/foo.sh redhat|fedora

    4.2方案

    Shell脚本中执行条件测试的方式:

    任何一条命令行

    test测试表达式

    [测试表达式]

    常用的test测试选项:

    文件状态检测-f-d-e-r-w-x

    整数值比较-gt-ge-eq-ne-lt-le

    字符串比较==!=

    取反操作!

    多分支if选择结构:

    if条件测试操作1;then

    命令序列1....

    elif条件测试操作2;then

    命令序列2....

    else

    命令序列3....

    fi

    4.3步骤

    实现此案例需要按照如下步骤进行。

    步骤一:编写foo.sh判断脚本

    1)编写脚本代码

    [root@server0~]#vim /root/foo.sh

    #!/bin/bash

    if [$#-eq 0];then

    echo "/root/foo.sh redhat|fedora"  > &2

    elif  [$1="redhat"];then

    echo "fedora"

    elif [$1="fedora"];then

    echo "redhat"

    else

    echo "/root/foo.sh redhat|fedora" > &2

    fi

    2)添加x执行权限

    [root@server0~]#chmod +x /root/foo.sh

    步骤二:测试foo.sh判断脚本

    1)测试提供正确参数的情况

    [root@server0~]#/root/foo.sh redhat

    fedora

    [root@server0~]#/root/foo.sh fedora

    Redhat

    2)测试提供非预期参数的情况

    [root@server0~]#/root/foo.sh ubuntu

    /root/foo.sh redhat|fedora

    3)测试不提供参数的情况

    [root@server0~]#/root/foo.sh

    /root/foo.sh redhat|fedora


     案例5:创建一个脚本

    5.1 案例概述:

    server0上创建一个名为/root/foo.sh的脚本,让其提供下列特性:

    当运行/root/foo.sh redhat,输出为fedora

    当运行/root/foo.sh fedora,输出为redhat

    当没有任何参数或者参数不是redhat或者fedora时,其错误输出产生以下的信息:/root/foo.sh redhat|fedora

    5.2 解题参考:

    [root@server0~]#vim /root/foo.sh

    #!/bin/bash

    If [ "$1" = "redhat" ];then

    echo "fedora"

    elif [ "$1" = "fedora" ];then

    echo "redhat"

    else

    Echo "/root/foo.sh redhat | fedora" > &2

    fi

    [root@server0~]#chmod  +x /root/foo.sh

  • 相关阅读:
    Asp.Net中Word,Excel等office com组件操作权限的问题 ————转自rainpig2008
    正则表达式摘录
    html5 Canvas画图2:画线条
    彻底理解函数声明与函数表达式优先级问题
    javascript定义变量和优先级的问题
    html5 Canvas画图4:填充和渐变
    讨论下canvas画椭圆的方法
    html5 Canvas画图3:1像素线条模糊问题
    [推荐]实在受不了canvas的语法了!我要让他支持链式语法!
    html5 Canvas画图5:画曲线之arc
  • 原文地址:https://www.cnblogs.com/qingbai/p/11936762.html
Copyright © 2011-2022 走看看