Сценарий оболочки является наиболее интуитивным способом «склеить» вашу систему. Однако у него нет некоторых полезных понятий, таких как наследование и модульность, которые есть в таких языках, как Python (который также используется для «склеивания» систем).
Правда, использование языка зависит в основном от задачи, которую вы пытаетесь выполнить. В большинстве случаев я работал, сценарий оболочки работал хорошо, хотя я использую много Python для выполнения системных задач. Я не думаю, что Java будет альтернативой в этом случае. Возможно Groovy, но не Java (я имею в виду Java как язык, а не Java как платформу).
С точки зрения системного администратора, я думаю, что Python и Ruby - отличные языки. Не только из-за динамической типизации и отсутствия необходимости компилирования, но и потому, что такие инструменты, как Fabric , Capistrano , Puppet и многие другие, которые делают жизнь сисадмина намного проще: -)