`bash -c echo hello`는 아무것도 인쇄하지 않지만 `bash -c "echo hello"`는 "hello"를 인쇄하는 이유는 무엇입니까?

`bash -c echo hello`는 아무것도 인쇄하지 않지만 `bash -c "echo hello"`는 "hello"를 인쇄하는 이유는 무엇입니까?

왜 "hello" bash -c echo hello외에는 아무것도 출력하지 않습니까 ?bash -c "echo hello"

답변1

bash -c echo hello

실제로 뭔가가 출력됩니다: 개행 문자입니다. 이 명령은 Bash echo에게 $0을 "hello"로 설정하여 실행하도록 지시합니다.

bash -c "echo hello"

반면에 Bash에게 실행을 지시하고 echo hello$0을 "bash"로 설정합니다.

관련 정보