Shell Script для запуска и остановки исполняемого JAR в среде Linux

28847
user3505567

Я должен написать скрипт запуска и остановки для исполняемого файла jar (например, executetable.jar).

Как это сделать с помощью сценариев оболочки?

Я получил успех, чтобы сделать это для среды Windows с файлом .bat . Но не удалось написать сценарий оболочки для того же.

3
Какой дистрибутив? Возможно, вам лучше написать сценарий init, upstart или systemd Journeyman Geek 9 лет назад 0

2 ответа на вопрос

2
Hastur

Это простая версия: вы можете написать небольшой скрипт, как показано ниже (сохраните его как MyStart.sh)

#!/bin/bash java -jar executable.jar & # You send it in background MyPID=$! # You sign it's PID echo $MyPID # You print to terminal echo "kill $MyPID" > MyStop.sh # Write the the command kill pid in MyStop.sh 

Когда вы выполните этот скрипт с помощью /bin/bash MyStart.sh, он выведет PID этого процесса на экран.

В противном случае вы можете изменить атрибут на MyStart.sh ( chmod u+x MyStart.sh) и запустить его просто с помощью ./MyStart.sh.

Чтобы остановить процесс, вы можете написать в командной строке, kill 1234где 1234 - PID, на который отвечает скрипт, или/bin/bash MyStop.sh

Не забудьте удалить скрипт MyStop.sh, после чего вы его используете.

Спасибо Хастур. Ваша логика сработала для моей проблемы. Это то, что я ожидаю. user3505567 9 лет назад 0
1
ethanwu10

Вам не нужно запускать отдельный скрипт, чтобы остановить задачу.

Заимствование из сценария Хастура:

#!/bin/bash java -jar executable.jar & # Send it to the background MyPID=$! # Record PID echo $MyPID # Print to terminal # Do stuff kill $MyPID # kill PID (can happen later in script as well) 

Похожие вопросы