zoukankan      html  css  js  c++  java
  • 七 算术运算

    BASH的算数扩展,有以下几种方法

     一    运算符的优先级,基本上都一样。

    二  算数扩展

      

    [root@localhost shellscript]# vim netmask_2_bits.sh
    #! /bin/bash
    
    declare -i a i q s=0
    a=${1:-255}
    mask="128 64 32 16 8 4 2 1"
    Bamp=
    echo $a
    echo "1 bits 128 64 32 16 8 4 2 1"
    for i in $mask
    do
            q=$((a/i))
            ((s+=q))
            [ $q -gt 0 ] && Bamp=$Bamp"_1_" || Bamp=$Bamp"_0_"
            a=$((a-q*i))
    done
    
    echo "  $s  :     $Bamp"
    ~

    三 外部程序 expr  做算术运算

     expr还有一个特殊的用法,就是查找字符串

    查找字符串在母串中的字符数

    r='expr "string" st'   或   r='expr match “”string“ st'

    查找字符串在母串中的位置

    r='expr index  "string" in'

    取母串中的子串根据起始位置

    r='expr substr "string" 2 3'

    计算字符串长度

    r='expr length "string"'

    将关键词当做一般词使用

    r='expr + match'  

    r='expr + /'

    四  使用$[]做算术运算

    语法:r=$[算术式]

    五  使用内置命令 declare 或 let 做算术运算

    delcare 用法

    例  delcare -i I   意思就是将I这个变量的属性设置成可运算,而非字符串

    注意:

     let 用法

     

    let可以采用三元运算符。

     

  • 相关阅读:
    有关敏捷(1)
    有关创业的想法
    2010必须做到的事
    技术搜索还是谷歌强
    错误处理的一些想法
    定期自动删除数据
    ip
    asp.ent Repeter实现分页
    QQ客服在线聊天
    几种文件上传的方法
  • 原文地址:https://www.cnblogs.com/Lonelychampion/p/11881521.html
Copyright © 2011-2022 走看看