문제:
Makefile의 명령 내에서 표현식을 삽입하는 데 어려움이 있음 평가로 인해 문제.
설명:
Makefile은 쉘 스크립트와 비교하여 다른 평가 규칙을 사용합니다. Makefile에서는 변수 확장을 위해 달러 기호($)를 사용하지만 명령 내에서 사용하면 의도한 대로 평가되지 않을 수 있습니다.
해결책:
Makefile 명령에서 $를 이스케이프하고 쉘과 같은 표현식 보간을 활성화하려면 두 번째 달러 기호($$)를 사용하십시오. 이는 Makefile이 첫 번째 $를 리터럴 텍스트로 처리하고 셸에 대한 보간을 연기하도록 지시합니다.
예:
Go 프로젝트에서 테스트를 실행하지만 공급업체를 건너뛰려면 테스트에서는 다음 Makefile 스니펫을 사용할 수 있습니다.
test: go test $$(go list ./... | grep -v /vendor/) .PHONY: test
이 예에서 $$(go list ./... | grep -v /vendor/)는 표현식이 셸에 의해 보간되도록 이중 달러로 묶습니다.
달러 기호를 이스케이프 처리하면 Makefile이 표현식을 올바르게 평가하고 다음을 제공합니다. 예상되는 출력입니다.
위 내용은 Makefile 명령에서 달러 기호 보간을 어떻게 피할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!