bash 腳本中如何拼接字符串
在幾乎所有編程語言中,字符串連接都是一個很重要的組成部分。
在 bash 中也可以連接字符串,但是 bash 中沒有用于字符串拼接的運算符,只需要將字符串一個一個的編寫在一起即可。如下所示:
下面我們以實際例子介紹一下如何在 bash 中拼接字符串。
字符串變量拼接
bash 中沒有像其他大多數(shù)編程語言中那樣的數(shù)據(jù)類型,但我們?nèi)匀豢梢栽?bash 中聲明變量。比如我們要聲明一個字符串變量:
可以使用 printf 命令打印此字符串變量的值:?
我們先定義幾個字符串變量:?
那怎樣將這些字符串拼接起來形成一個新的變量呢?
通過這種方式,我將所有四個字符串連接到一個變量中,并將其命名為 tony。請注意,我在變量之間添加了一個空格。
然后我們驗證一下新的字符串:?
下面是完整的 bash 腳本:?
設(shè)置其可執(zhí)行權(quán)限,然后執(zhí)行:?
在進行字符串拼接時,包裹變量名的花括號 {} 不是必需的。不過為了讓代碼更易讀,最好加上花括號 {}。
字符串追加
上面的例子是將多個字符串拼接為一個。那怎樣將一串字符追加到某個已存在的字符串中呢?可以使用 += 運算符來實現(xiàn)。如下所示:?
這樣,最后 str 的值是什么呢?答案是 ironman。?
當(dāng)我們在 bash 中使用循環(huán)的時候,這會很有用,如下例子:?
運行上述腳本,其結(jié)果如下:
連接數(shù)字和字符串
正如我們前文提到的,Bash 中沒有數(shù)據(jù)類型。字符串和整數(shù)是相同的,因此它們可以很容易地連接到一個字符串中。
我們用上文中第二個腳本來看另一個示例。這次,我們用一個數(shù)字:?
執(zhí)行:?
字符串的嵌套拼接
上面例子中我們得到了兩個連接后的字符串,也可以將這兩個字符串嵌套拼接,存儲在第三個字符串中。如下面腳本所示:?
下面是執(zhí)行結(jié)果: