2017-01-31 8 views
0

쉘 스크립팅을 처음 사용했습니다.셸 : 작은 따옴표 안에 가변 확장

out="FAILURE" 
curl -X POST -d 'json={"json":"message"}' http://localhost:8888/json.tail.test 

내가 $out의 값으로 "메시지"를 교체하려면 :

나는 다음 스크립트가 있습니다. 나는 다른 방법을 시도했지만 그 일을 끝낼 수 없었다. 누군가 제발 나를 제안 해 주시겠습니까?

답변

0

으로 "message"를 교체해야합니다. 작은 따옴표는 큰 따옴표를 보호하지만 $out과 같은 변수의 확장을 억제합니다.

+1

고맙습니다. 그것은 효과가있다! –

0

이 시도 : 작은 따옴표 안에 $out를 제외한 모든 묶

out="FAILURE" 
curl -X POST -d 'json={"json":"'$out'"}' http://localhost:8888/json.tail.test 

을 기본적으로 :

out="FAILURE" curl -X POST -d 'json={"json": $OUT}' http://localhost:8888/json.tail.test 

그냥이 작업을 수행 그대로 $OUT

+0

이렇게하면'$ OUT' 부분이 확장되지 않습니다. 또한'$ OUT'의 확장은 OP의 요구에 따라 큰 따옴표 안에 있어야합니다. 내 대답은 아래를 참조하십시오. – codeforester