": $ {foo = value}"의 콜론 연산자 설명
나는 null 처럼 작동하는 bash의 콜론 연산자를 이해하고 매개 변수 확장 에 사용되며 다른 방법으로 사용된다는 것을 알고 있지만 누군가 이것을 설명 할 수 있습니다.
: ${SOMETHING='value'}
실험에서 나는 이것이 환경 변수 $SOMETHING
를 설정한다는 것을 알고 'value'
있지만 그 이유는 무엇입니까?
"그냥 그렇기 때문에"는 유효한 대답이지만 그에 대한 문서 (찾을 수없는 것 같음)를 알려주거나이 사용법에 대한 적절한 이름이 유용 할 것입니다. 나는 더 깨달은 설명이 있기를 바랍니다.
표현식은 value
아직 설정되지 않은 경우 SOMETHING을로 설정합니다. 이것은 많은 상황에서 유용한 연산자입니다. 그러나 할당 된 값도 반환하므로 단순히 실행하면
${SOMETHING='value'}
그러면 쉘이 명령 호출을 시도합니다 value
. 이것은 원하지 않는 일을 할 수도 있고하지 않을 수도 있습니다. 최소한 "값 : 명령을 찾을 수 없음"이라는 메시지가 표시됩니다.
이를 피하려면 :
인수를 실행하는 대신 인수를 평가 한 다음 버리는 no-op을 사용할 수 있습니다 .
여기에 설명 : http://tldp.org/LDP/abs/html/parameter-substitution.html
매개 변수가 설정되지 않은 경우 기본값으로 설정하십시오.
둘 다 거의 동등합니다. :는 $ parameter가 선언되고 null 인 경우에만 차이가 있습니다. [1]
echo ${var=abc} # abc echo ${var=xyz} # abc # $var had already been set to abc, so it did not change.
참고 URL : https://stackoverflow.com/questions/7444504/explanation-of-colon-operator-in-foo-value
'Program Tip' 카테고리의 다른 글
Application.Run ()과 Form.ShowDialog ()의 차이점은 무엇입니까? (0) | 2020.11.05 |
---|---|
Python 클래스 정의 구문 (0) | 2020.11.05 |
IEnumerable의 폐기를 고려해야합니까? (0) | 2020.11.05 |
프로세스를 X 번 실행하는 더 파이썬적인 방법 (0) | 2020.11.05 |
접근성 : SVG 및 MathML에 권장되는 대체 텍스트 규칙? (0) | 2020.11.05 |