![명령 출력을 변수에 할당할 수 없습니다. [중복]](https://linux55.com/image/156990/%EB%AA%85%EB%A0%B9%20%EC%B6%9C%EB%A0%A5%EC%9D%84%20%EB%B3%80%EC%88%98%EC%97%90%20%ED%95%A0%EB%8B%B9%ED%95%A0%20%EC%88%98%20%EC%97%86%EC%8A%B5%EB%8B%88%EB%8B%A4.%20%5B%EC%A4%91%EB%B3%B5%5D.png)
다음 명령이 포함된 update.sh 파일이 있습니다.
shyaml get-value platform < ~/mcp_version/latest-versions.yaml
터미널을 통해 명령을 실행할 수 있으며 스크립트에서도 명령을 실행할 수 있습니다.
다음은 스크립트 내용입니다
echo "The platform is $now"
echo "PATH is '$PATH'"
platform = $(shyaml get-value platform < ~/mcp_version/latest-versions.yaml)
echo "The platform is $platform"
shyaml get-value platform < ~/mcp_version/latest-versions.yaml
그러나 명령의 출력을 변수에 할당하려고 하면 오류가 발생합니다. ~처럼
./update.sh: line 12: platform: command not found
아래는 스크립트를 실행할 때의 출력입니다.
bash-4.2$ ./update.sh
The platform is Fri Jul 12 11:57:25 IST 2019
PATH is '/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/usr/bin/:/usr/bin/shyaml'
./update.sh: line 12: platform: command not found
The platform is
19.06.00bash-4.2$
답변1
정답은 @Prvt_Yadv의 첫 번째 댓글입니다.
동등 전후의 공백 제거
잘못된:
platform = something
옳은:
platform=something