echo 문에서 변수 값을 전달하는 방법은 무엇입니까?
testvar="actualvalue"
echo 'testing "${testvar}", "testing", "testing" ;'
예상 출력:
testing "actualvalue", "testing", "testing" ;
그러나 다음과 같은 결과가 나타납니다.
testing "${testvar}", "testing", "testing" ;
누군가 나를 도와줄 수 있나요?
답변1
작은따옴표 제거:
$ testvar="actualvalue"
$ echo testing "${testvar}", "testing", "testing" ;
testing actualvalue, testing, testing
작은따옴표는 변수 확장을 비활성화합니다.
큰따옴표 없이 동일한 출력을 얻습니다.
$ echo testing ${testvar}, testing, testing ;
testing actualvalue, testing, testing
그러나 출력에 큰따옴표를 사용하려면 이스케이프 처리하세요.
$ echo "testing \"${testvar}\", \"testing\", \"testing\" ;"
testing "actualvalue", "testing", "testing" ;