Как послать сигнал на дочерний sh процесс?
sh -c "java -jar ol.jar"
Зачем такая команда, если можно сразу java -jar ol.jar?

Я посылаю сигналы на PID sh процесса, и только 9 сигнал срабатывает (логично, он же его убивает), остальные сигналы sh съедает сам и не посылает дочернему процессу.
sh ничего не съедает и передавать автоматом в дочерние процессы он может только sighup, который он не передаст поскольку у вас интерактивная сессия, и сигнал 9 до процесса не доходит - процесс прибивается ядром.

Собственно пока не будет понятно, зачем вы запускаете sh из которого запускаете jar, не очень понятно что происходит.

Возможно, вам нужно это делать вот так:
java -jar  ol.jar &
echo $! > ol.pid
и следовательно получать pid джава процесса в файле, в дальнейшем с ним работать.
А написать спою запускалку, которая будет pid из переменной $! доставать? https://unix.stackexchange.com/questions/30370/how...