여러 명령을 실행하는 화면이 있는 셸 스크립트

여러 명령을 실행하는 화면이 있는 셸 스크립트

화면을 통해 두 개의 마인크래프트 서버를 시작하는 간단한 스크립트를 작성했습니다. 잘 실행할 수 있지만 문제는 첫 번째 명령을 실행하고 해당 줄을 잘 실행하지만 두 번째 줄을 실행하지 않고 생성된 화면에 들어가서 서버로 이동한다는 것입니다. 두 명령을 모두 강제로 실행하려면 어떻게 해야 합니까?

스크립트는 다음과 같습니다.

#!/bin/bash
#Launches minecraft servers

#Plugin Test Server
screen -S PluginTest java -Xms1024M -Xmx1024M -XX:MaxPermSize=128M -jar /home/kalenpw/TestWorld/spigot-1.10.jar

#Khalidor Server
screen -S Khalidor java -Xms8192M -Xmx9216M -XX:MaxPermSize=128M -jar /home/kalenpw/KhalidorServer/spigot-1.10.jar

첫 번째 PluginTest는 제대로 실행되지만 Khalidor의 두 번째 줄은 실행되지 않습니다.

답변1

첫 번째 명령 끝에 '&'를 추가하면 두 번째 명령이 실행될 수 있습니다. 따라서 첫 번째 명령을 다음으로 변경하십시오.

screen -S PluginTest java -Xms1024M -Xmx1024M -XX:MaxPermSize=128M -jar /home/kalenpw/TestWorld/spigot-1.10.jar &

'&'를 사용하면 명령이 백그라운드에서 실행됩니다. 두 번째 명령 끝에 하나를 추가하면 스크립트를 실행한 후 프롬프트로 돌아가고 두 명령 모두 백그라운드에서 실행됩니다. 'jobs' 명령을 실행하면 이를 볼 수 있습니다.

관련 정보