문자열 변수를 세 번째 변수에 연결하는 방법은 무엇입니까?

문자열 변수를 세 번째 변수에 연결하는 방법은 무엇입니까?

bash에서 두 문자열을 연결해야 합니다.

string1=hello
string2=world

mystring=string1+string2

echo mystring생산해야 한다

안녕하세요 세계

답변1

bash 변수 인수를 사용하거나 식별자의 일부로 유효한 문자를 즉시 ​​추가하지 않는 한, {}를 사용할 필요가 없습니다. 또한 매개변수에 특수 문자가 포함되지 않는 한 큰따옴표를 사용할 필요가 없습니다.

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"

답변2

변수를 연결하기만 하면 됩니다.

mystring="$string1$string2"

답변3

변수를 리터럴 문자열과 연결해야 하는 경우:

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

echo $mystring생산할 것입니다:

안녕하세요 어떤 세계 텍스트도 있습니다.

답변4

많은 변수를 연결하려는 경우 +=추가 문자열을 사용할 수도 있습니다. 이렇게 하면 가독성이 높아질 수 있습니다.

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

다른 답변에서 언급했듯이 {}는 여기에 필요하지 않지만 개인적으로 구문 오류를 피하기 위해 항상 사용합니다.

+=배열에 값을 추가하는 데에도 사용할 수 있습니다 array+=($b).

관련 정보