l oop программа до 100 выход - PullRequest
0 голосов
/ 03 февраля 2020

У меня java сервер запущен в качестве этой команды

java  -server -Xms512m -Xmx512m -XX:+UseG1GC  -cp "XX"

мы планируем запустить этот java из сценария bash, который проверяет, равен ли код завершения этого процесса 100, перезапустите процесс и сохранить сервер работает, и если код завершения был 0, процесс будет d ie и процесс остановлен

Спасибо

Ответы [ 2 ]

0 голосов
/ 03 февраля 2020
while true; do
    java  -server -Xms512m -Xmx512m -XX:+UseG1GC  -cp "XX"
    rc=$?
    case $rc in
        0)   break ;;
        100) : ;;    # no-op, keep looping
        *)   echo "unexpected exit status $rc" 2>&1; exit $rc ;;
    esac
done
echo "process complete"
0 голосов
/ 03 февраля 2020

В bash вы проверяете код выхода команды, читая специальную переменную $? ценность.

Пример:

$ ls .bash_profile
.bash_profile
$ echo "$?"
0

$ ls non-existing-file
ls: cannot access 'non-existing-file': No such file or directory
$ echo "$?"
2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...