it-swarm-id.com

bagaimana cara menggabungkan variabel string menjadi sepertiga?

Saya perlu menyatukan dua string dalam bash, sehingga:

string1=hello
string2=world

mystring=string1+string2

echo mystring harus menghasilkan

halo Dunia

39
michelemarcon

cukup menyatukan variabel:

mystring="$string1$string2"
40
SiegeX

Anda tidak perlu menggunakan {} kecuali Anda akan menggunakan parameter variabel bash atau segera menambahkan karakter yang akan valid sebagai bagian dari pengidentifikasi. Anda juga tidak perlu menggunakan tanda kutip ganda kecuali jika parameter Anda akan menyertakan karakter khusus.

x=foo
y=bar
z=$x$y        # $z is now "foobar"
z="$x$y"      # $z is still "foobar"
z="$xand$y"   # does not work
z="${x}and$y" # does work, "fooandbar"
z="$x and $y" # does work, "foo and bar"
53
khamer

Jika Anda perlu menggabungkan variabel dengan string literal:

string1=hello
string2=world
mystring="some ${string1} arbitrary ${string2} text"

echo $mystring akan menghasilkan:

beberapa halo dunia sembarang teks

19
phunehehe

Jika Anda ingin menggabungkan banyak variabel, Anda juga dapat menggunakan += Untuk menambahkan string .. Ini dapat meningkatkan keterbacaan ..

mystring=${string1}
mystring+=${string2}
mystring+=${string3}
mystring+=${string4}
echo ${mystring}

Seperti yang disebutkan oleh jawaban lain, {} tidak diperlukan di sini tetapi saya pribadi selalu menggunakannya untuk menghindari beberapa kesalahan sintaksis.

+= Juga dapat digunakan untuk menambahkan nilai ke array: array+=($b).

12
mariux