Bash 스크립트에서 (표현식)과 (명령)의 차이점은 무엇입니까

Bash 스크립트에서 (표현식)과 (명령)의 차이점은 무엇입니까

Bash 스크립트의 명령과 표현식 사이에 의미 있는 차이점이 있습니까? 또한 (명령)이 새 하위 쉘을 열고 명령을 실행한다는 것을 알고 있지만 (표현식)이 있으면 어떤 일이 발생하는지 모르겠습니다. 명령 대신 표현식을 사용하면 어떻게 되나요?

예를 들어

[[ ( "$#" < 1 ) ]] 

감사해요

답변1

[[ ( "$#" < 1 ) ]] 

위치 인수의 개수가 사전식 순서인지 [[ ... ]]확인하는 테스트 입니다 ( 산술 "보다 작음" 테스트를 수행하는 데 대신 사용).$#1-lt<

쉘의 특수 [[ ... ]]구문 에서 bash괄호는 하위 쉘을 도입하지 않고 오히려 연산자의 일반적인 우선 순위가 무시되도록 표현식을 그룹화하는 방법을 제공합니다.

이는 구문을 bash설명하는 설명서에 설명되어 있습니다 .[[ ... ]]

[[ expression ]]

[...]

표현식은 우선순위 내림차순으로 나열된 다음 연산자를 사용하여 결합할 수 있습니다.

( expression )
반환된 값입니다 expression. 이는 연산자의 일반적인 우선순위를 재정의하는 데 사용할 수 있습니다.
[...등...]

관련 정보