두 개의 명령을 동시에 실행하시겠습니까?

두 개의 명령을 동시에 실행하시겠습니까?

이것이 내 문제의 본질입니다.

저는 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의 생각을 추가하도록 업데이트되었습니다. 계속하기 전에 웹 서버의 포트가 열릴 때까지 기다리십시오)

관련 정보