![두 개의 명령을 동시에 실행하시겠습니까?](https://linux55.com/image/74357/%EB%91%90%20%EA%B0%9C%EC%9D%98%20%EB%AA%85%EB%A0%B9%EC%9D%84%20%EB%8F%99%EC%8B%9C%EC%97%90%20%EC%8B%A4%ED%96%89%ED%95%98%EC%8B%9C%EA%B2%A0%EC%8A%B5%EB%8B%88%EA%B9%8C%3F.png)
이것이 내 문제의 본질입니다.
저는 Raspberry Pi를 사용하여 Wikipedia 서버를 실행하고 있으므로 Wikipedia 서버를 시작하고 웹 브라우저를 localhost:8080으로 여는 실행 프로그램(바탕 화면 아이콘)을 만들고 싶습니다. 이 작업을 수행하기 위해 스크립트를 작성할 때마다 먼저 오는 스크립트만 실행됩니다. 예를 들어:
./wikipedia_server; ./web_browser
세미콜론으로 구분하면 Wikipedia 서버 프로세스가 완료될 때까지 기다린 다음(완료되지 않음) 웹 브라우저를 시작합니다. 만약 내가한다면
./web_browser; ./wikipedia_server
그런 다음 웹 브라우저를 닫을 때까지 기다립니다.
동시에 실행할 수 있는 작은 스크립트를 만들 수 있는 방법이 있습니까? 그렇다면 어떻게 해야 합니까? 감사해요.
답변1
Wikipedia 서버를 백그라운드로 보내고 웹 브라우저를 실행한 다음 완료되면 서버를 종료할 수 있습니다.
./wikipedia_server &
server=$!
# wait for TCP port 8080 to open up
while ! netstat -tln | grep -q :8080; do :; done
./web_browser
kill $server
...위키피디아 서버를 탐색하지 않는 이상 실행되는 것을 원하지 않는다고 가정합니다.
(댓글에 Ole Tange의 생각을 추가하도록 업데이트되었습니다. 계속하기 전에 웹 서버의 포트가 열릴 때까지 기다리십시오)