主頁(yè) > 知識(shí)庫(kù) > Shell腳本中判斷變量為數(shù)字的3種方法

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

熱門標(biāo)簽:陜西電銷卡外呼系統(tǒng)怎么安裝 杭州機(jī)器人外呼系統(tǒng) 旅游地圖標(biāo)注大全 百度地圖標(biāo)注圖標(biāo)更換 百度地圖的地圖標(biāo)注 東莞電銷機(jī)器人價(jià)格一覽表 地圖標(biāo)注超出范圍怎么辦 佛山高德地圖標(biāo)注中心 excel地址地圖標(biāo)注

方法1:通過(guò)expr 計(jì)算變量與一個(gè)整數(shù)值相加,如果能正常執(zhí)行則為整數(shù),否則執(zhí)行出錯(cuò),$?將是非0的值

復(fù)制代碼 代碼如下:

expr $args + 0 >/dev/null

方法2:打印變量通過(guò)sed替換的方式,將變量中的數(shù)字替換為空,如果執(zhí)行替換后變量為空,則為整數(shù)

復(fù)制代碼 代碼如下:

echo $args | sed 's/[0-9]//g'

如果判斷負(fù)數(shù)則再用sed過(guò)濾負(fù)號(hào)

復(fù)制代碼 代碼如下:

echo $args | sed 's/[0-9]//g' | sed 's/-//g'

下面的腳本通過(guò)兩個(gè)函數(shù)來(lái)實(shí)現(xiàn)數(shù)值判斷。代碼很簡(jiǎn)單,就不加注釋了。

復(fù)制代碼 代碼如下:

#!/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

標(biāo)簽:青島 南充 隨州 延邊 西藏 朝陽(yáng) 雅安 通遼

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Shell腳本中判斷變量為數(shù)字的3種方法》,本文關(guān)鍵詞  Shell,腳本,中,判斷,變量,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Shell腳本中判斷變量為數(shù)字的3種方法》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Shell腳本中判斷變量為數(shù)字的3種方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章