![`bash -c echo hello`는 아무것도 인쇄하지 않지만 `bash -c "echo hello"`는 "hello"를 인쇄하는 이유는 무엇입니까?](https://linux55.com/image/89487/%60bash%20-c%20echo%20hello%60%EB%8A%94%20%EC%95%84%EB%AC%B4%EA%B2%83%EB%8F%84%20%EC%9D%B8%EC%87%84%ED%95%98%EC%A7%80%20%EC%95%8A%EC%A7%80%EB%A7%8C%20%60bash%20-c%20%22echo%20hello%22%60%EB%8A%94%20%22hello%22%EB%A5%BC%20%EC%9D%B8%EC%87%84%ED%95%98%EB%8A%94%20%EC%9D%B4%EC%9C%A0%EB%8A%94%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
왜 "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"로 설정합니다.
왜 "hello" bash -c echo hello
외에는 아무것도 출력하지 않습니까 ?bash -c "echo hello"
bash -c echo hello
실제로 뭔가가 출력됩니다: 개행 문자입니다. 이 명령은 Bash echo
에게 $0을 "hello"로 설정하여 실행하도록 지시합니다.
bash -c "echo hello"
반면에 Bash에게 실행을 지시하고 echo hello
$0을 "bash"로 설정합니다.