bash 스크립트에서 문자열을 어떻게 연결합니까?


21

쉘 스크립트에서 문자열과 변수를 어떻게 연결합니까?

stringOne = "foo"

stringTwo = "anythingButBar"

stringThree = "? 및?"

"foo and anythingButBar"를 출력하고 싶습니다

답변:


29

특별한 것은 없으며 선언에 추가하면됩니다.

예를 들면 다음과 같습니다.

[Zypher@host01 monitor]$ stringOne="foo"
[Zypher@host01 monitor]$ stringTwo="anythingButBar"
[Zypher@host01 monitor]$ stringThree=$stringOne$stringTwo
[Zypher@host01 monitor]$ echo $stringThree 
fooanythingButBar

그들 사이에 문자 적 ​​단어 'and'를 원한다면 :

[Zypher@host01 monitor]$ stringOne="foo"
[Zypher@host01 monitor]$ stringTwo="anythingButBar"
[Zypher@host01 monitor]$ stringThree="$stringOne and $stringTwo"
[Zypher@host01 monitor]$ echo $stringThree 
foo and anythingButBar

4
내가 제안 할 수 있다면, 귀하의 프롬프트는 시끄럽고 귀하의 답변을 모호하게합니다 (그리고 달러 기호 뒤에 공백은 가독성을 도울 것입니다). 같은 뭔가 $ stringOne="foo"예를 들어,. 또한 프롬프트는 출력 줄 (에코 다음 줄)에 나타나지 않아야합니다. 그렇지 않으면 +1입니다.
추후 공지가있을 때까지 일시 중지되었습니다.

10
echo ${stringOne}and${stringTwo}공백을 원하지 않는다면
max taldykin

당신은 또한 할 수 있습니다 stringThree=$stringOne" and "$stringTwo.
Armfoot

5

대신에 당신이 가진 경우 :

stringOne="foo"
stringTwo="anythingButBar"
stringThree="%s and %s"

당신은 할 수 있습니다 :

$ printf "$stringThree\n" "$stringOne" "$stringTwo"
foo and anythingButBar
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.