나는 함께 일하고 있다Bash의 하위 문자열- 와일드카드 사용 -
다음과 같은:
if [[ "$LIST" == *"$SOURCE"* ]]
잘 작동합니다.
하지만 그냥 장난치는 것 뿐이야 (역방향)
if [[ *"$SOURCE"* == "$LIST" ]]
작동하지 않습니다
그렇다면 왜 *"$SOURCE"*
오른쪽에 선언되어야 합니까? 다른 LP에서는 ==
언제 사용해도 순서는 중요하지 않습니다.
답변1
사용할 때==
운영자,
연산자 오른쪽의 문자열은 패턴으로 처리됩니다.
...따라서 *
와일드카드를 사용하면 작동합니다. 그러나 피연산자를 바꾸면 *
일치시키려는 문자열의 일부가 되지만 이는 원하는 것이 아닙니다.