你如何追加已经存在的字符串?

Min*_*int 103 string bash shell string-concatenation

我想追加一个字符串,这样每次我循环它都会添加说"test"到字符串.

就像在PHP中一样,你会这样做:

$teststr = "test1\n"
$teststr .= "test2\n"
echo = "$teststr"
Run Code Online (Sandbox Code Playgroud)

回声:

test1
test2
Run Code Online (Sandbox Code Playgroud)

但我需要在shell脚本中执行此操作

Wil*_*ell 191

在经典sh中,您必须执行以下操作:

s=test1
s="${s}test2"
Run Code Online (Sandbox Code Playgroud)

(这个主题有很多变化,比如s="$s""test2")

在bash中,你可以使用+ =:

s=test1
s+=test2
Run Code Online (Sandbox Code Playgroud)


gho*_*g74 26

$ string="test"
$ string="${string}test2"
$ echo $string
testtest2
Run Code Online (Sandbox Code Playgroud)


Jim*_*Jim 13

#!/bin/bash
message="some text"
message="$message add some more"

echo $message
Run Code Online (Sandbox Code Playgroud)

一些文字增加了一些


Ign*_*ams 10

teststr=$'test1\n'
teststr+=$'test2\n'
echo "$teststr"
Run Code Online (Sandbox Code Playgroud)