for 루프를 사용하여 동시에 여러 프로세스를 시작하려고 합니다. 각각의 콘솔 창에서 생성되기를 원합니다. 지금까지 나는 다음을 가지고 있습니다 :
for i in {1..5}; do konsole -e "./program arg1 arg2"; done
그러나 이것은 단지 하나씩 실행되는 것이므로 동시에 실행되기를 원합니다. "&"를 사용해 보았지만 루프에서 잘 작동하도록 할 수 없습니다.
답변1
&
명령 끝에 추가하여 백그라운드 작업을 시작합니다. konsole
다음과 같이 쓰면 루프가 백그라운드에서 시작됩니다.
for i in {1..5}; do
konsole -e "./program arg1 arg2" &
done
아니면 한 줄로,
for i in {1..5}; do konsole -e "./program arg1 arg2" & done
이는 (및 개행 문자 및 기타 몇 가지) &
와 같은 명령 종결자이므로;
바꾸다;
원래 거기에 있던 것.
시작된 백그라운드 작업이 완료될 때까지 스크립트가 기다리도록 하려면 wait
끝에 다음을 추가하세요.
for i in {1..5}; do konsole -e "./program arg1 arg2" & done; wait