shell基础(二)

1、基本运算
在这里插入图片描述

val=`expr $a + $b`
echo "a + b : $val"
  • 表达式和运算符之间要有空格,例如 2+2 是不对的,必须写成 2 + 2,与我们熟悉的大多数编程语言不一样。

  • 完整的表达式要被 包含,注意这个字符不是常用的单引号,在 Esc 键下边。

  • 乘号(*)前边必须加反斜杠()才能实现乘法运算;
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    2、流程控制

    if condition
    then
    command1
    command2

    commandN
    fi
    --------------------!

    if condition
    then
    command1
    command2

    commandN
    else
    command
    fi
    --------------------!
    if condition1
    then
    command1
    elif condition2
    then
    command2
    else
    commandN
    fi
    --------------------!
    for var in item1 item2 … itemN
    do
    command1
    command2

    commandN
    done
    --------------------!
    while condition
    do
    command
    done
    --------------------!
    until condition
    do
    command
    done
    --------------------!
    case 值 in
    模式1)
    command1
    command2

    commandN
    ;;
    模式2)
    command1
    command2

    commandN
    ;;
    esac
    --------------------!
    break:
    #!/bin/bash
    while :
    do
    echo -n “输入 1 到 5 之间的数字:”
    read aNum
    case $aNum in
    1|2|3|4|5) echo “你输入的数字为 $aNum!”
    ;;
    *) echo “你输入的数字不是 1 到 5 之间的! 游戏结束”
    break
    ;;
    esac
    done
    --------------------!
    continue:
    #!/bin/bash
    while :
    do
    echo -n "输入 1 到 5 之间的数字: "
    read aNum
    case $aNum in
    1|2|3|4|5) echo “你输入的数字为 $aNum!”
    ;;
    *) echo “你输入的数字不是 1 到 5 之间的!”
    continue
    echo “游戏结束”
    ;;
    esac
    done
    !-------------------!
    在这里插入图片描述
    3、函数
    [ function ] funname [()]
    {
    action;
    [return int;]
    }

  • 可以带function fun() 定义,也可以直接fun() 定义,不带任何参数。

  • 参数返回,可以显示加:return 返回,如果不加,将以最后一条命令运行结果,作为返回值。 return后跟数值n(0-255)

funWithReturn(){
echo “这个函数会对输入的两个数字进行相加运算…”
echo "输入第一个数字: "
read aNum
echo "输入第二个数字: "
read anotherNum
echo “两个数字分别为 $aNum 和 $anotherNum !”
return ( ( (( ((aNum+$anotherNum))
}
funWithReturn
echo “输入的两个数字之和为 $? !”

  • 函数返回值在调用该函数后通过 $? 来获得。
  • 注意:所有函数在使用前必须定义。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值