国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

Shell腳本中判斷變量為數字的3種方法

2019-10-26 18:44:12
字體:
來源:轉載
供稿:網友

方法1:通過expr 計算變量與一個整數值相加,如果能正常執行則為整數,否則執行出錯,$?將是非0的值

代碼如下:
expr $args + 0 &>/dev/null

方法2:打印變量通過sed替換的方式,將變量中的數字替換為空,如果執行替換后變量為空,則為整數

代碼如下:
echo $args | sed 's/[0-9]//g'

如果判斷負數則再用sed過濾負號

代碼如下:
echo $args | sed 's/[0-9]//g' | sed 's/-//g'

下面的腳本通過兩個函數來實現數值判斷。代碼很簡單,就不加注釋了。

代碼如下:
#!/bin/bash
usage(){
cat <<EOF
USEAGE:sh $0args1 args2
exit 1
EOF
}
checkInt(){
expr $1+ 0&>/dev/null
[ $? -ne 0] && { echo "Args must be integer!";exit 1; }
}
checkInt1(){
tmp=`echo $1|sed 's/[0-9]//g'`
[ -n "${tmp}"]&& { echo "Args must be integer!";exit 1; }
}
[ $# -ne 2]&&usage
args1=$1
args2=$2
checkInt $args1
checkInt1 $args2
if[ $args1 -gt $args2 ];then
echo "yes,$args1 greate than $args2"
else
echo "no,$args1 less than $args2"
fi

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 台江县| 邻水| 彭水| 甘德县| 姜堰市| 汝南县| 鹤岗市| 延边| 彭州市| 姚安县| 乐都县| 穆棱市| 工布江达县| 额尔古纳市| 忻州市| 青岛市| 内黄县| 全南县| 宁海县| 和政县| 衡东县| 双鸭山市| 棋牌| 大竹县| 和田县| 兴和县| 罗源县| 临夏市| 彭山县| 花莲县| 临江市| 睢宁县| 阜宁县| 青州市| 长宁区| 望谟县| 台安县| 邵东县| 清河县| 连州市| 正安县|