如何在 Bash 中连接字符串

Suraj Joshi 2023年1月30日 2020年9月26日
  1. Bash 字符串串联将一个字符串变量放在另一个字符串变量的末尾
  2. 使用 += 运算符进行字符串连接
如何在 Bash 中连接字符串

字符串连接是编程中使用最广泛的操作之一,它指的是通过将一个字符串放在另一个字符串的末端来连接两个或多个字符串。在 Bash 中进行字符串的连通,我们可以将字符串变量一个接一个的写入,或者使用 += 运算符进行连通。

Bash 字符串串联将一个字符串变量放在另一个字符串变量的末尾

我们可以通过将字符串变量一个接一个地连续放置来连接字符串。

STR1="Delft"
STR2="Stack"

STR3="$STR1$STR2"

echo "$STR3"

输出:

DelftStack

在上面的例子中,我们将 STR1STR3 连接起来,并将连接后的字符串分配给 STR3。双引号 (" ") 是用来防止拆分或 globbing 问题的。

我们使用 echo 命令来打印输出。

用字符串连接一个或多个变量

STR1="Delft"

STR3="${STR1}-Stack"

echo "$STR3"

输出:

Delft-Stack

这里,{} 用于分离字符串变量和字符串文字。

它将字符串变量 STR1 与字符串文字 -Stack 连接在一起。

将两个以上的字符串串联在一起

我们可以将字符串变量和字元连续放置,将两个以上的字符串变量连在一起。

STR1="Delft"
STR2="-Stack"
STR3="Check them out!!"

STR4="${STR1}${STR2} has great programming articles.${STR3}"

echo "$STR4"

输出:

Delft-Stack has great programming articles.Check them out!!

连接数字和字符串字元

Bash 在连接变量时不区分变量类型。根据上下文,它们被解释为整数或字符串。

STR1="FIVE-"
STR2=5

STR4="$STR1$STR2"

echo "$STR4"

输出:

FIVE-5

它将字符串变量 FIVE-5 连在一起。

使用 += 运算符进行字符串连接

Bash 还允许使用 += 运算符进行字符串连接。简单的 a+=b 可以理解为 a=a+b

STR1="Delft"
STR2="-Stack"

STR1+=$STR2

echo "$STR1"

输出:

Delft-Stack

这里,STR2 被追加到 STR1 的末尾,结果存储在 STR1 变量中。

要追加多个值,我们可以使用一个简单的 for 循环。

NUMS=""
for NUM in 'One' 'Two' 'Three' 'Four'; do
  NUMS+="${NUM} "
done

echo "$NUMS"

输出:

One Two Three Four 
Author: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

相关文章 - Bash String