Shell腳本判斷用戶的輸入內(nèi)容
1.腳本功能:提示客戶屬于一串?dāng)?shù)字,并判斷用戶是否進(jìn)行了輸入,輸入的是否為數(shù)字
#!/bin/bash read -p "enter a number: " number #提示用戶輸入數(shù)字 if [ -z $number ];then #判斷用戶是否輸入,如果未輸入則打印error echo "Error" exit else jieguo=`echo "$number*1" | bc ` #把用戶的輸入值和1相乘,交給bc做運(yùn)算 if [ $jieguo -eq 0 ];then #判斷計(jì)算結(jié)果是否為0,為0則說(shuō)明number非數(shù)字(字符串和0相乘結(jié)果為0) echo "not a number" exit fi fi
Shell腳本中判斷輸入變量或者參數(shù)是否為空的方法,下面總結(jié)了5種方法,并分別給出了代碼實(shí)例,需要的朋友可以參考下
1.判斷變量
代碼如下:
read -p "input a word :" word if [ ! -n "$word" ] ;then echo "you have not input a word!" else echo "the word you input is $word" fi
2.判斷輸入?yún)?shù)
代碼如下:
#!/bin/bash if [ ! -n "$1" ] ;then echo "you have not input a word!" else echo "the word you input is $1" fi
以下未驗(yàn)證。
3. 直接通過(guò)變量判斷
如下所示:得到的結(jié)果為: IS NULL
代碼如下:
#!/bin/sh para1= if [ ! $para1 ]; then echo "IS NULL" else echo "NOT NULL" fi
4. 使用test判斷
得到的結(jié)果就是: dmin is not set!
代碼如下:
#!/bin/sh dmin= if test -z "$dmin" then echo "dmin is not set!" else echo "dmin is set !" fi
5. 使用""判斷
代碼如下:
#!/bin/sh dmin= if [ "$dmin" = "" ] then echo "dmin is not set!" else echo "dmin is set !" fi
下面是我在某項(xiàng)目中寫(xiě)的一點(diǎn)腳本代碼, 用在系統(tǒng)啟動(dòng)時(shí):
代碼如下:
#! /bin/bash echo "Input Param Is [$1]" if [ ! -n "$1" ] ;then echo "you have not input a null word!" ./app1;./app12;./app123 elif [ $1 -eq 2 ];then ./app12;./app123 elif [ $1 -eq 90 ];then echo "yy"; fi
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
- 使用shell腳本每天對(duì)MySQL多個(gè)數(shù)據(jù)庫(kù)自動(dòng)備份的講解
- shell腳本操作mysql數(shù)據(jù)庫(kù)刪除重復(fù)的數(shù)據(jù)
- shell腳本批量刪除es索引的方法
- Java調(diào)用shell腳本解決傳參和權(quán)限問(wèn)題的方法
- springboot打包不同環(huán)境配置以及shell腳本部署的方法
- Shell中的while循環(huán)幾種使用實(shí)例詳解
- Linux Shell在目錄下使用for循環(huán)結(jié)合if查找文件的巧用
- Shell腳本中使用getopts處理多命令行選項(xiàng)
- Shell腳本從文件中逐行讀取內(nèi)容的幾種方法實(shí)例
- shell腳本實(shí)現(xiàn)監(jiān)控某個(gè)進(jìn)程意外停止后拉起進(jìn)程
相關(guān)文章
Shell腳本break和continue命令簡(jiǎn)明教程
這篇文章主要介紹了Shell腳本break和continue命令簡(jiǎn)明教程,break和continue命令用來(lái)在未達(dá)到循環(huán)結(jié)束條件時(shí)強(qiáng)制跳出循環(huán),需要的朋友可以參考下2014-07-07shell實(shí)現(xiàn)圖書(shū)管理系統(tǒng)
這篇文章主要介紹了shell實(shí)現(xiàn)圖書(shū)管理系統(tǒng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-01-01centos 設(shè)置定時(shí)任務(wù)執(zhí)行指定腳本的方法
下面小編就為大家?guī)?lái)一篇centos 設(shè)置定時(shí)任務(wù)執(zhí)行指定腳本的方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02linux禁止普通用戶切換至root用戶的實(shí)例講解
今天小編就為大家分享一篇linux禁止普通用戶切換至root用戶的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-06-06詳解shell腳本中的case條件語(yǔ)句介紹和使用案例
這篇文章主要介紹了詳解shell腳本中的case條件語(yǔ)句介紹和使用案例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04jenkins+shell自動(dòng)化部署的實(shí)現(xiàn)步驟
本文主要介紹了jenkins+shell自動(dòng)化部署的實(shí)現(xiàn)步驟,通過(guò)jenkins與shell腳本相結(jié)合,實(shí)現(xiàn)war包自動(dòng)部署到多臺(tái)服務(wù)器上,感興趣的可以了解一下2022-04-04