Wie hängt man eine bereits vorhandene Zeichenfolge an?

113

Ich möchte an eine Zeichenfolge anhängen, damit jedes Mal, wenn ich eine Schleife darüber mache, der Zeichenfolge "test" hinzugefügt wird.

Wie in PHP würden Sie tun:

$teststr = "test1\n"
$teststr .= "test2\n"
echo = "$teststr"

Echos:

test1
test2

Aber ich muss dies in einem Shell-Skript tun

Minze
quelle

Antworten:

211

Im klassischen sh muss man so etwas machen wie:

s=test1
s="${s}test2"

(Es gibt viele Variationen zu diesem Thema, wie s="$s""test2")

In Bash können Sie + = verwenden:

s=test1
s+=test2
William Pursell
quelle
29
$ string="test"
$ string="${string}test2"
$ echo $string
testtest2
Ghostdog74
quelle
14
#!/bin/bash
message="some text"
message="$message add some more"

echo $message

Einige Texte fügen weitere hinzu

Jim
quelle
11
teststr=$'test1\n'
teststr+=$'test2\n'
echo "$teststr"
Ignacio Vazquez-Abrams
quelle
2
VAR=$VAR"$VARTOADD(STRING)"   
echo $VAR
Manuelsen
quelle
1
#!/bin/bash

msg1=${1} #First Parameter
msg2=${2} #Second Parameter

concatString=$msg1"$msg2" #Concatenated String
concatString2="$msg1$msg2"

echo $concatString 
echo $concatString2
Aditya
quelle