![인라인 변수 정의는 작동하지만 이전 줄은 aws 명령에 대해 작동하지 않는 이유는 무엇입니까? [복사]](https://linux55.com/image/108072/%EC%9D%B8%EB%9D%BC%EC%9D%B8%20%EB%B3%80%EC%88%98%20%EC%A0%95%EC%9D%98%EB%8A%94%20%EC%9E%91%EB%8F%99%ED%95%98%EC%A7%80%EB%A7%8C%20%EC%9D%B4%EC%A0%84%20%EC%A4%84%EC%9D%80%20aws%20%EB%AA%85%EB%A0%B9%EC%97%90%20%EB%8C%80%ED%95%B4%20%EC%9E%91%EB%8F%99%ED%95%98%EC%A7%80%20%EC%95%8A%EB%8A%94%20%EC%9D%B4%EC%9C%A0%EB%8A%94%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F%20%5B%EB%B3%B5%EC%82%AC%5D.png)
이 명령을 실행할 때:
https_proxy=http://myproxy.com/ aws [aws-param]
에이전트는 명령줄 도구를 통해 얻습니다 aws
.
하지만 - 내가 할 때:
https_proxy=http://myproxy.com/
aws [aws-param]
이 aws
명령은 프록시를 얻지 않습니다.
나에게는 유닉스 관점에서 볼 때 그것들은 동일합니다. 이것은 Python이 환경 변수를 읽는 방식과 관련이 있습니까?
내 질문은 다음과 같습니다인라인 변수 정의는 작동하지만 이전 줄은 aws 명령에 대해 작동하지 않는 이유는 무엇입니까?
답변1
Unix 관점에서(또는 쉘의 관점에서) 이들은 동일하지 않습니다.
https_proxy=http://myproxy.com/ aws [aws-param]
https_proxy
명령에 대한 변수를 명시적으로 정의하십시오 aws
. 쉘은 이를 aws
프로세스 환경에 복사하고 aws
살펴봅니다.
https_proxy=http://myproxy.com/
aws [aws-param]
변수는 쉘 환경에 정의되어 있지만 변수를 내보내지 않기 때문에 쉘은 변수를 aws
프로세스 환경에 복사하지 않습니다.
aws
( 의 관점 에서) 동등한 것은 실제로
https_proxy=http://myproxy.com/
export https_proxy
aws [aws-param]
바라보다Bash 구문은 무엇입니까: someVariable=someValue 명령자세한 내용(및 문서 링크)을 알아보세요.