shell之運算符


一 算術運算符:shell

    + - * / %(取餘) **(冪)express

1.1 expr計算某個表達式值bash

    expr expression(expr不能計算冪運算)io

    例子:變量

    #!/bin/bash語法

    #計算2和100的差,即-98引用

    result=`expr 2 -100`二進制

    echo"$result"字符

    #計算2和100的和,即102let

    result=`expr 2 +100`

    echo"$result"

    #計算2和5的乘積,即10

    result=`expr 2 \*5`

    echo"$result"

    #計算24和8的商,即3

    result=`expr 24 /8`

    echo"$result"

    #先計算2和6的差,而後再乘以12,即-48

    result=`expr \( 2- 6 \) \* 12`

    echo"$result"

    #錯誤的語法,沒有空格

    result=`expr 2+5`

    echo"$result"

    #錯誤的語法

    result=`expr2-4*9`

    echo"$result"

    #錯誤的語法

    result=`expr1-(4-7)`

    echo"$result"

 1.2 用$(())計算:

    #! /bin/sh

    #緊湊格式,計算3和6的和

    result=$((3+6))

    echo"$result"

    #鬆散格式,計算3和9的和

    result=$(( 3 + 9))

    echo"$result"

    #計算3和6的乘積

    reuslt=$(( 3 * 6))

    echo"$result"

    #計算7和5的商

    result=$(( 7 / 5))

    echo"$result"

    #計算8和3的餘數

    result=$(( 8 % 3))

    echo"$result"

    #複合運算

    result=$(( ( 1-4 )* 5 ))

    echo"$result"

 
1.3 用$[ ]計算

    #! /bin/sh

    #加法運算

    result=$[4+5]

    echo"$result"

    #複合運算

    result=$[(1+2)*3]

    echo"$result"

    #冪運算

    result=$[ 2 ** 4 ]

    echo"$result"

 
1.4 用let命令計算

    let命令可執行一個或多個算術表達式,變量名無需$,若是表達式有空格或其餘特殊字符,引用起來。

    #! /bin/sh

    #定義變量

    n=10

    #加法運算

    let n=n+1

    echo"$n"

    #乘法運算

    let n=n*10

    echo"$n"

    #冪運算

    let n=n**2

    echo"$n"

 二 位運算符

    <<左移

    >>右移

    &按位與

    | 位或

    ~位非

    ^位異或

2.1自增自減運算符:

    ++varibale 先加1,再賦給variable

    --variable  先減1,再賦給variable

    vaiable++  先用variable,再加1

    variable--   先用variable,再減1

2.2數字常量的進制:

    默認狀況下,shell以十進制表示數字,也可用二進制,八進制,十六進制。

    增長前綴:0表示8進制,0x表示十六進制

    井號#:2#100表示2進制,8#42表示8進制

相關文章
相關標籤/搜索