亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Shell實(shí)現(xiàn)字符串處理的方法詳解

 更新時(shí)間:2022年09月22日 09:23:01   作者:農(nóng)民工老王  
這篇文章主要為大家詳細(xì)介紹了Linux?Shell中實(shí)現(xiàn)字符串處理的方法,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,感興趣的可以了解一下

大小寫轉(zhuǎn)化

# 把變量中的第一個(gè)字符換成大寫
${test^}

# 把變量中的所有小寫字母,全部替換為大寫
${test^^}

# 把變量中的第一個(gè)字符換成小寫
${test,}

# 把變量中的所有大寫字母,全部替換為小寫
${test,,}

示例

#!/bin/bash
# script file name is test.sh 
test="abcDEF"
echo "test^=${test^}"
echo "test^^=${test^^}"
echo "test,=${test,}"
echo "test,,=${test,,}"

獲取字符串長(zhǎng)度

${#string}

替換

整體替換

# 若變量var為空,則用string來(lái)替換此處的值,最常用。
${var:-string}

# 若變量var為空,則用string來(lái)替換此處的值,把string賦給變量var。
${var:=string}

# 若變量var不為空,則用string來(lái)替換此處的值。
${var:+string}

# 若變量var不為空,則用string來(lái)替換此處的值;
# 若變量var為空,則把string輸出到標(biāo)準(zhǔn)錯(cuò)誤中,并從腳本中退出。
# 常用利用此特性來(lái)檢查是否設(shè)置了變量的值。
${var:?string}

部分替換

# 只替換第1個(gè)子串
${var/old/new}

# 替換全部子串
${var//old/new}

截取

# 從string字符串的左邊第start個(gè)字符開始(不包含第start個(gè)字符),向右截取到最后,start從0開始;
${string:start}

# 從string字符串的左邊第start個(gè)字符開始(不包含第start個(gè)字符),向右截取length個(gè)字符;
${string:start:length}

# 從string字符串的右邊第start個(gè)字符開始(包含第start個(gè)字符),向右截取到最后,start從1開始;
${string:0-start}

# 從string字符串的右邊第start個(gè)字符開始(包含第start個(gè)字符),向右截取length個(gè)字符,start從1開始;
${string:0-start:length}

# 從string字符串左邊第一次出現(xiàn)*chars的位置開始,截取*chars右邊的所有字符,不包含chars;
${string#*chars}

# 從string字符串左邊最后一次出現(xiàn)*chars的位置開始,截取*chars右邊的所有字符,不包含chars;
${string##*chars}

# 從string字符串右邊第一次出現(xiàn)chars*的位置開始,截取chars*左邊的所有字符,不包含chars;
${string%chars*}

# 從string字符串右邊最后一次出現(xiàn)chars*的位置開始,截取chars*左邊的所有字符,不包含chars;
${string%%*chars*}

示例

#!/bin/bash
# script file name is test.sh 
url="https://blog.csdn.net/monarch91"
echo "url=${url}"
echo "url:8=${url:8}"
echo "url:8:4=${url:8:4}"
echo "url:0-8=${url:0-8}"
echo "url:0-8:4=${url:0-8:4}"
echo "url#*c=${url#*c}"
echo "url##*c=${url##*c}"
echo "url%c*=${url%c*}"
echo "url%%c*=${url%%c*}"

補(bǔ)充

當(dāng)然,除了以上操作,Shell還有許多字符串操作,下面小編為大家整理了一些,需要的可以參考一下

字符串的拼接

str1=www
str2=bilibili

string1=$str1$str2              #中間不加別的,直接放一起
string2="$str1 $str2"           #雙引號(hào)括住,中間可加任意字串
string3=$str1"..."$str2         #整體不加引號(hào),若中間要出現(xiàn)別的字串需前后緊挨,且字串雙引號(hào)括住
string4="${str1}.${str2}.com"   #也可以使用${}方式引用變量

echo $string1
echo $string2
echo $string3
echo $string4

運(yùn)行結(jié)果:

wwwbilibili
www bilibili
www...bilibili
www.bilibili.com

讀取字符串

$ echo ${abc-'ok'}
ok

$ echo $abc
$ echo ${abc='ok'}
ok
$ echo $abc
ok

$ var1=11;var2=12;var3=
$ echo ${!v@}
var1 var2 var

$ echo ${!v*}
var1 var2 var3

#${!varprefix*}${!varprefix@}相似,可以通過變量名前綴字符,搜索已經(jīng)定義的變量,無(wú)論是否為空值。

字符串比較

[[ "a.txt" == a* ]]        #邏輯真(pattern matching)
[[ "a.txt" =~ .*\.txt ]]   #邏輯真(regex matching)
[[ "abc" == "abc" ]]       #邏輯真(string comparision)
[[ "11" < "2" ]]           #邏輯真(string comparision),按 ascii 值比較

到此這篇關(guān)于Shell實(shí)現(xiàn)字符串處理的方法詳解的文章就介紹到這了,更多相關(guān)Shell字符串處理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解Windows與Linux共享文件夾互相訪問

    詳解Windows與Linux共享文件夾互相訪問

    這篇文章主要介紹了 詳解Windows與Linux共享文件夾互相訪問的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • shell中長(zhǎng)命令的換行處理方法示例

    shell中長(zhǎng)命令的換行處理方法示例

    這篇文章主要給大家介紹了關(guān)于shell中長(zhǎng)命令的換行處理方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用shell具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Xshell全局去除提示音圖文方法詳解

    Xshell全局去除提示音圖文方法詳解

    這篇文章主要為大家介紹了Xshell全局去除提示音圖文方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • Linux?中的export與alias命令詳解

    Linux?中的export與alias命令詳解

    export和alias都是用來(lái)簡(jiǎn)化命令行輸入的工具。export用于設(shè)置環(huán)境變量,環(huán)境變量是一些系統(tǒng)級(jí)別的變量,用于指定一些系統(tǒng)的默認(rèn)值或者搜索路徑等,這篇文章主要介紹了Linux?中的export與alias命令,需要的朋友可以參考下
    2023-04-04
  • linux awk時(shí)間計(jì)算腳本及awk命令詳解

    linux awk時(shí)間計(jì)算腳本及awk命令詳解

    這篇文章主要介紹了linux awk時(shí)間計(jì)算腳本及awk命令詳解的相關(guān)資料,需要的朋友可以參考下
    2015-11-11
  • linux shell中if的各種判斷

    linux shell中if的各種判斷

    這篇文章主要介紹了linux shell中if的各種判斷,需要的朋友可以參考下
    2019-04-04
  • 每天學(xué)一個(gè) Linux 命令之more命令

    每天學(xué)一個(gè) Linux 命令之more命令

    more命令,功能類似 cat ,more會(huì)以一頁(yè)一頁(yè)的顯示方便使用者逐頁(yè)閱讀,而最基本的指令就是按空白鍵(space)就往下一頁(yè)顯示,按 b 鍵就會(huì)往回(back)一頁(yè)顯示,而且還有搜尋字串的功能
    2016-12-12
  • shell編程基礎(chǔ)知識(shí)小結(jié)

    shell編程基礎(chǔ)知識(shí)小結(jié)

    這篇文章主要介紹了shell編程基礎(chǔ)知識(shí),包括文件類型、正則表達(dá)式、字符類、引號(hào)類型、變量設(shè)置、條件測(cè)試、命令執(zhí)行順序、腳本調(diào)試方面的介紹
    2013-02-02
  • Linux中執(zhí)行shell腳本的4種方法總結(jié)

    Linux中執(zhí)行shell腳本的4種方法總結(jié)

    這篇文章主要介紹了Linux中執(zhí)行shell腳本的4種方法總結(jié),即在Linux中運(yùn)行shell腳本的4種方法,需要的朋友可以參考下
    2014-08-08
  • Linux啟動(dòng)過程詳細(xì)介紹

    Linux啟動(dòng)過程詳細(xì)介紹

    這篇文章主要介紹了Linux啟動(dòng)過程詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下
    2017-06-06

最新評(píng)論