如何在 Bash 中连接字符串
Suraj Joshi
2023年1月30日
2020年9月26日
字符串连接是编程中使用最广泛的操作之一,它指的是通过将一个字符串放在另一个字符串的末端来连接两个或多个字符串。在 Bash 中进行字符串的连通,我们可以将字符串变量一个接一个的写入,或者使用 +=
运算符进行连通。
Bash 字符串串联将一个字符串变量放在另一个字符串变量的末尾
我们可以通过将字符串变量一个接一个地连续放置来连接字符串。
STR1="Delft"
STR2="Stack"
STR3="$STR1$STR2"
echo "$STR3"
输出:
DelftStack
在上面的例子中,我们将 STR1
和 STR3
连接起来,并将连接后的字符串分配给 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 is a backend software engineer at Matrice.ai.
LinkedIn