Shell Shell 指令碼中字串的相關操作

2021-08-20 20:48:57 字數 2891 閱讀 3905

在我們的shell 程式設計中,乙個必不可少的操作就是針對於字串的操作,

重要有字串替換,計算字串長度 等等。。。

下面對這些操作進行乙個總結。

返回$string的長度

在$string中,從$position位置之後開始提取子串

在$string中,從$position位置之後開始提取$length長度的子串

[root@localhost

shell]# name="ni hao, ming tian"

[root@localhost

shell]# echo $name

ni hao, ming tian

[root@localhost

shell]# echo $

ni hao, ming tian

[root@localhost

shell]# echo $

17[root@localhost

shell]# echo $

hao, ming tian

[root@localhost

shell]# echo $

hao, m

[root@localhost

shell]#

從變數$string開頭開始刪除最短匹配$substring子串

從變數$string開頭開始刪除最長匹配$sunstring子串

[root

@localhost

shell

]# name=abcabc123abcabcde

[root@localhost

shell]# echo $name

abcabc123abcabcde

[root@localhost

shell]# echo $

123abcabcde

[root@localhost

shell]# echo $

abcde

[root@localhost

shell]#

從變數$string結尾開始刪除最短匹配$substring子串

從變數$string結尾開始刪除最長匹配$substring子串

[root@localhost

shell]# name=abcabc123abcabc

[root@localhost

shell]# echo $name

abcabc123abcabc

[root@localhost

shell]# echo $

[root@localhost

shell]# echo $

abcabc123abc

[root@localhost

shell]# echo $

abcabc123abcabc

[root@localhost

shell]# echo $

abcabc123abcabc

[root@localhost

shell]# echo $

abcabc123abca

[root@localhost

shell]# echo $

abcabc123abca

[root@localhost

shell]# echo $

abcabc123ab

[root@localhost

shell]# echo $

abcab

[root@localhost

shell]# echo $

abcabc123abcabc

[root@localhost

shell]# echo $

abcabc123abcabc

[root@localhost

shell]#

在進行%或者%%匹配時,$string的最後乙個字元必須是被刪除子串$substring的最後乙個字元,不然無法進行刪除操作;

用string來替換第乙個匹配的pattern

從開頭匹配parameter變數中的pattern,匹配上後就用string來替換匹配的pattern

從結尾開始匹配parameter變數中的pattern,匹配上後就用string替換匹配的pattern

用string來替換parameter變數中所有匹配的pattern

[root@localhost

shell]# name="i am a student student"

[root@localhost

shell]# echo $

i am a teacher teacher

[root@localhost

shell]# echo $

i am a student student

[root@localhost

shell]# echo $

i am a student teacher

[root@localhost

shell]# echo $

i am a student student

[root@localhost

shell]# echo $

teachera student student

[root@localhost

shell]# echo $

teacher student student

[root@localhost

shell]# echo $name

i am a student student

[root@localhost

shell]#

Shell shell指令碼中的空格

1.定義變數時,號的兩邊不可以留空格.eg gender femal right gender femal wrong gender femal wrong gender test right 左邊是命令的話 號的右邊有空格是正確的 左邊不能有空格 gender test wrong 等號 左邊必須...

Shell Shell指令碼執行

shell指令碼執行的方法有一下幾種 一.shellname.sh 二source shellname.sh 三chmod x shellname.sh shellname.sh 四sh shellname.sh區別和相同點 他們的相同點是都可以成功執行乙個shell指令碼。而不同點有 第一種方法 ...

shell shell指令碼實戰 for迴圈

總結前言 迴圈語句常用於重複執行一條命令或一組命令等,直到達到結束條件後,則終止執行。在shell中常見的迴圈命令有while until for和select等 今天我們來 第乙個迴圈語句,for迴圈。for迴圈介紹 for迴圈語句與while迴圈語句類似,但for迴圈語句主要用於有限次的迴圈場景...