서브쉘이 작동하지 않습니다

서브쉘이 작동하지 않습니다

여러 명령을 병렬로 실행하고 싶지만 아래 코드 조각이 작동하지 않는 이유를 모르겠습니다.

#!/bin/bash
( ping 8.8.8.8 )
( ping 192.168.0.1 )

두 번째 ping 명령을 완전히 무시합니다. 왜 이런 일이 발생합니까?

편집: 좋아요, 이제 실행을 통해 병렬로 실행할 수 있다는 것을 알았습니다 &.

ping 8.8.8.8 & ping 192.168.0.1

그런데 위의 코드 조각이 작동하지 않는 이유는 무엇입니까?

답변1

기본적으로 하위 쉘은 분기되지 않습니다. 또한 &첫 번째 하위 쉘이 완료될 때까지 기다리지 않고 두 번째 하위 쉘을 실행하려면 백그라운드로 보내기를 사용해야 합니다.

예를 들어

ping 8.8.8.8 & ping 192.168.0.1

관련 정보