echo hello && $(echo "world")가 "bash: world: 명령을 찾을 수 없음"으로 인해 실패합니다.

echo hello && $(echo "world")가 "bash: world: 명령을 찾을 수 없음"으로 인해 실패합니다.

완전한 명령은 쉘 프롬프트가 있는 % echo hello && $(echo "world")곳 입니다.%

왜 실패했나요?

bash에서 직접 명령 대체를 실행할 때와 오류가 동일하다는 것을 알았습니다.

% $(echo "world")

답변1

"hello" 명령을 실행하려고 시도하지만 시스템에 바이너리가 없기 때문에 실패합니다.

echo에 대한 인수는 따옴표로 묶어야 합니다. 예:

echo "hello"

답변2

그룹화가 잘못되었습니다.

Bash에서 명령을 그룹화하려면 다음과 같이 중괄호를 사용하세요.

% echo hello && { echo "world"; }

구문에 대한 몇 가지 참고 사항:

  • 여는 중괄호는 로 구분되어야 합니다 echo. 그렇지 않으면 이라는 명령 이름의 일부로 처리됩니다 {echo.
  • 괄호 안의 일련의 명령은 세미콜론으로 끝나야 합니다 ;.

제어 작업에 대해서는 이 페이지의 "3. 그룹화 문" 섹션을 참조하세요.http://mywiki.wooledge.org/BashGuide/TestsAndConditionals#Control_Operators_.28.26.26_and_.7C.7C.29

관련 정보