![Bash 스크립트에서 (표현식)과 (명령)의 차이점은 무엇입니까](https://linux55.com/image/212562/Bash%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EC%97%90%EC%84%9C%20(%ED%91%9C%ED%98%84%EC%8B%9D)%EA%B3%BC%20(%EB%AA%85%EB%A0%B9)%EC%9D%98%20%EC%B0%A8%EC%9D%B4%EC%A0%90%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C.png)
Bash 스크립트의 명령과 표현식 사이에 의미 있는 차이점이 있습니까? 또한 (명령)이 새 하위 쉘을 열고 명령을 실행한다는 것을 알고 있지만 (표현식)이 있으면 어떤 일이 발생하는지 모르겠습니다. 명령 대신 표현식을 사용하면 어떻게 되나요?
예를 들어
[[ ( "$#" < 1 ) ]]
감사해요
답변1
[[ ( "$#" < 1 ) ]]
위치 인수의 개수가 사전식 순서인지 [[ ... ]]
확인하는 테스트 입니다 ( 산술 "보다 작음" 테스트를 수행하는 데 대신 사용).$#
1
-lt
<
쉘의 특수 [[ ... ]]
구문 에서 bash
괄호는 하위 쉘을 도입하지 않고 오히려 연산자의 일반적인 우선 순위가 무시되도록 표현식을 그룹화하는 방법을 제공합니다.
이는 구문을 bash
설명하는 설명서에 설명되어 있습니다 .[[ ... ]]
[[ expression ]]
[...]
표현식은 우선순위 내림차순으로 나열된 다음 연산자를 사용하여 결합할 수 있습니다.
( expression )
반환된 값입니다expression
. 이는 연산자의 일반적인 우선순위를 재정의하는 데 사용할 수 있습니다.
[...등...]