Shell字符串比較相等、不相等方法小結(jié)
更新時(shí)間:2014年10月22日 11:37:08 投稿:junjie
這篇文章主要介紹了Shell字符串比較相等、不相等方法小結(jié),本文直接給出代碼,但代碼中含有大量注釋,需要的朋友可以參考下
#!/bin/sh #測(cè)試各種字符串比較操作。 #shell中對(duì)變量的值添加單引號(hào),爽引號(hào)和不添加的區(qū)別:對(duì)類型來(lái)說(shuō)是無(wú)關(guān)的,即不是添加了引號(hào)就變成了字符串類型, #單引號(hào)不對(duì)相關(guān)量進(jìn)行替換,如不對(duì)$符號(hào)解釋成變量引用,從而用對(duì)應(yīng)變量的值替代,雙引號(hào)則會(huì)進(jìn)行替代 #author:tenfyguo A="$1" B="$2" echo "輸入的原始值:A=$A,B=$B" #判斷字符串是否相等 if [ "$A" = "$B" ];then echo "[ = ]" fi #判斷字符串是否相等,與上面的=等價(jià) if [ "$A" == "$B" ];then echo "[ == ]" fi #注意:==的功能在[[]]和[]中的行為是不同的,如下 #如果$a以”a”開(kāi)頭(模式匹配)那么將為true if [[ "$A" == a* ]];then echo "[[ ==a* ]]" fi #如果$a等于a*(字符匹配),那么結(jié)果為true if [[ "$A" == "a*" ]];then echo "==/"a*/"" fi #File globbing(通配) 和word splitting將會(huì)發(fā)生, 此時(shí)的a*會(huì)自動(dòng)匹配到對(duì)應(yīng)的當(dāng)前以a開(kāi)頭的文件 #如在當(dāng)前的目錄中有個(gè)文件:add_crontab.sh,則下面會(huì)輸出ok #if [ "add_crontab.sh" == a* ];then #echo "ok" #fi if [ "$A" == a* ];then echo "[ ==a* ]" fi #如果$a等于a*(字符匹配),那么結(jié)果為true if [ "$A" == "a*" ];then echo "==/"a*/"" fi #字符串不相等 if [ "$A" != "$B" ];then echo "[ != ]" fi #字符串不相等 if [[ "$A" != "$B" ]];then echo "[[ != ]]" fi #字符串不為空,長(zhǎng)度不為0 if [ -n "$A" ];then echo "[ -n ]" fi #字符串為空.就是長(zhǎng)度為0. if [ -z "$A" ];then echo "[ -z ]" fi #需要轉(zhuǎn)義<,否則認(rèn)為是一個(gè)重定向符號(hào) if [ $A /< $B ];then echo "[ < ]" fi if [[ $A < $B ]];then echo "[[ < ]]" fi #需要轉(zhuǎn)義>,否則認(rèn)為是一個(gè)重定向符號(hào) if [ $A /> $B ];then echo "[ > ]" fi if [[ $A > $B ]];then echo "[[ > ]]" fi
您可能感興趣的文章:
- 監(jiān)控MySQL主從狀態(tài)的shell腳本
- shell腳本使用兩個(gè)橫杠接收外部參數(shù)的方法
- 使用Shell腳本如何啟動(dòng)/停止Java的jar程序
- Shell中使用grep、sed正則提取和替換字符串
- Shell eval通過(guò)變量獲取環(huán)境變量的方法實(shí)現(xiàn)
- shell腳本實(shí)戰(zhàn)-while循環(huán)語(yǔ)句
- shell腳本--sed的用法詳解
- linux shell中 if else以及大于、小于、等于邏輯表達(dá)式介紹
- Linux中執(zhí)行shell腳本的4種方法總結(jié)
- 一個(gè)不錯(cuò)的shell 腳本教程 入門級(jí)
- python中執(zhí)行shell命令的幾個(gè)方法小結(jié)
- 分享一個(gè)可以通過(guò)命令簡(jiǎn)寫(xiě)執(zhí)行對(duì)應(yīng)命令的Shell腳本
相關(guān)文章
Linux?shell中的-d,-f,-e,-n的作用小結(jié)
本文主要介紹了Linux?shell中的-d,-f,-e,-n的作用小結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06
jenkins 實(shí)現(xiàn)shell腳本化定時(shí)執(zhí)行任務(wù)的方法
這篇文章主要介紹了jenkins 實(shí)現(xiàn)shell腳本化定時(shí)執(zhí)行任務(wù),解決訪問(wèn)是jenkins構(gòu)建好之后將jar遠(yuǎn)程推送到生產(chǎn)服務(wù)器,提前退出后臺(tái)執(zhí)行服務(wù)器遠(yuǎn)程腳本,腳本通過(guò)ngnx提前切走nginx代理auction sleep 1800s,半小時(shí)后執(zhí)行更新重啟,具體操作過(guò)程跟隨小編一起看看吧2022-01-01
Shell腳本中通過(guò)正則表達(dá)式匹配IP地址
這篇文章主要介紹了Shell腳本中通過(guò)正則表達(dá)式匹配IP地址,本文直接給出實(shí)現(xiàn)代碼,需要的朋友可以參考下2015-05-05
shell腳本實(shí)現(xiàn)字符串的動(dòng)態(tài)替換方法
這篇文章主要介紹了shell腳本實(shí)現(xiàn)字符串的動(dòng)態(tài)替換,在shell腳本中全部替換的方式為${var//old/new},本文通過(guò)實(shí)現(xiàn)腳本給大家詳細(xì)講解,需要的朋友可以參考下2022-10-10
shell腳本將Oracle服務(wù)器中數(shù)據(jù)定時(shí)增量刷新到ftp服務(wù)器中
這篇文章主要介紹了shell腳本將Oracle服務(wù)器中數(shù)據(jù)定時(shí)增量刷新到ftp服務(wù)器中,非常不錯(cuò),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2019-08-08
一句話Shell命令關(guān)閉不需要的隨機(jī)啟動(dòng)服務(wù)
這篇文章主要介紹了一句話Shell命令關(guān)閉不需要的隨機(jī)啟動(dòng)服務(wù),使用本文的一句話命令,可以達(dá)到優(yōu)化系統(tǒng)的目的,其中要保留的服務(wù)可以自己定義,需要的朋友可以參考下2014-12-12

