Bash 字符串運(yùn)算符

2023-01-03 08:57 更新

同其他編程語(yǔ)言一樣,在 Bash 中,字符串也是一種數(shù)據(jù)類型。只要以" "引起來(lái),不論是數(shù)字還是字符,都會(huì)被 Bash 視為字符串。如"Welcome to W3Cschool"。

字符串運(yùn)算符

1.= 等于運(yùn)算符,等于時(shí)返回true。

語(yǔ)法示例:

Str1 = Str2

應(yīng)用示例:

#!/bin/bash
Str1="W3Cschool.cn"
Str2="W3C"
if [ $Str1 = $Str2 ];
then
    echo "True"
else
    echo "False"
fi

執(zhí)行后得到以下結(jié)果:

False

2.!= 不等于運(yùn)算符,不等于時(shí)返回true。

語(yǔ)法示例:

Str1 != Str2

應(yīng)用示例:

#!/bin/bash


Str1="W3Cschool.cn"
Str2="W3C"


if [[ $Str1 != $Str2 ]];
then
echo "True"
else
echo "False"
fi

執(zhí)行后得到以下結(jié)果:

True

3.檢查字符串長(zhǎng)度是否為零。

  • -n,不為零時(shí)返回true。

語(yǔ)法示例:

-n Str

應(yīng)用示例:

#!/bin/sh
Str="Welcome to W3Cschool"


if [ -n $Str ];
then
 echo "True"
else
    echo "False"
fi

執(zhí)行后返回以下結(jié)果:

True

4.檢查字符串長(zhǎng)度是否為空。

  • [-z string ]:如果string不為空(長(zhǎng)度大于0),則判斷為真。

應(yīng)用示例:

#!/bin/sh

  
ANSWER=maybe

  
if [ -z "$ANSWER" ]; then
  echo "There is no answer." >&2
  exit 1
fi
if [ "$ANSWER" = "yes" ]; then
  echo "The answer is YES."
elif [ "$ANSWER" = "no" ]; then
  echo "The answer is NO."
elif [ "$ANSWER" = "maybe" ]; then
  echo "The answer is MAYBE."
else
  echo "The answer is UNKNOWN."
fi

執(zhí)行后返回以下結(jié)果:

maybe

上面代碼中,首先確定$ANSWER字符串是否為空。如果為空,就終止腳本,并把退出狀態(tài)設(shè)為1。注意,這里的echo命令把錯(cuò)誤信息There is no answer.重定向到標(biāo)準(zhǔn)錯(cuò)誤,這是處理錯(cuò)誤信息的常用方法。如果$ANSWER字符串不為空,就判斷它的值是否等于yes、no或者maybe。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)