let与expr命令的用法与实战案例
生活随笔
收集整理的這篇文章主要介紹了
let与expr命令的用法与实战案例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
let命令的用法
格式:
let 賦值表達式
【注】let賦值表達式功能等同于:(賦值表達式)
例子:給自變量i加8
| 1 2 3 4 5 6 7 8 | [root@XCN?~]#?i=2 [root@XCN?~]#?let?i=i+8 [root@XCN?~]#?echo?$i 10 [root@XCN?~]#?i=i+8???#去掉let定義 [root@XCN?~]#?echo?$i i+8??????#輸出的結果 提示:let?i=i+8等同于((i=i+8)),但后者效率更高 |
expr命令的用法:
expr命令一般用于整數值,但也可用于字符串,用來表達式變量的值,同時expr也是一個手工命令行計算器。
語法:expr expression
| 1 2 3 4 5 6 7 8 | [root@XCN?~]#?expr?2?+?2 4 [root@XCN?~]#?expr?2?-?2? 0 [root@XCN?~]#?expr?2?*?2? expr:?syntax?error [root@XCN?~]#?expr?2?\*?2??#*號用/來轉義 4 |
提示:?
注意:運算符左右都有空格
使用乘號時,必須用反斜線屏蔽其特定含義。因為shell可能會誤解星號的含義
增量計數:
expr在循環中可用于增量計算。首先,循環初始化為0,然后循環值加1,反引號的用法為命令替代,最基本的一種是從(expr)命令接受輸出并將之放入循環變量。
例:給自變量i加1
| 1 2 3 4 | [root@XCN?~]#?i=0 [root@XCN?~]#?i=`expr?$i?+?1` [root@XCN?~]#?echo?$i 1 |
expr$[$a+$b]表達式形式,其中$a$b可為整數值
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | [root@XCN?~]#?expr?$[2+3] 5 [root@XCN?~]#?expr?$[2*3]? 6 [root@XCN?~]#?expr?$[2**3] 8 [root@XCN?~]#?expr?$[2/3]?? 0 [root@XCN?~]#?expr?$[2%3]? 2 [root@XCN?~]#?a=5???????? [root@XCN?~]#?b=6 [root@XCN?~]#?expr?$[$a+$b] 11 #expr將其后的串解釋為表達式并計算其值,運算符前后需有空格 |
expr 特殊用法:
expr判斷擴展名腳本
| 1 2 3 4 5 6 7 8 9 10 | #!/bin/bash if?expr?"$1"?:?".*\.pub"?&>/dev/null??#判斷傳遞參數擴展名是否為pub then ????echo?"you?are?using?$1" else ????echo?"pls?use?*.pub?file" fi ??? ?#expr?id_dsa.pub:`.*\.pub`,匹配*.pub格式的文件如果是則為真。離: |
expr判斷是非整數
#!/bin/bash
| 1 2 3 4 5 6 7 | expr?1?+?$1?&>/dev/null if?[?$??-eq?0?] then ??echo?"zhengshu" else ??echo?"feizhengshu" fi |
本文轉自 baishuchao 51CTO博客,原文鏈接:http://blog.51cto.com/baishuchao/1941056
總結
以上是生活随笔為你收集整理的let与expr命令的用法与实战案例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: spanning-tree extend
- 下一篇: 为什么做梦梦到牙齿掉了