Языки сценариев оболочки Linux легко и быстро разрабатываются для простых вещей. Их очень легко поддерживать, поскольку они представляют собой чистый текст, интерпретируемый оболочкой.
Их трудно использовать для чего-то более сложного, чем несколько десятков строк кода. Они не являются правильными языками программирования. Если у вас есть какая-либо текстовая подстановка или расчет размеров, это становится трудно писать.
Если вы делаете только создание каталогов и копирование файлов, используйте сценарий оболочки.
Java-программы сложно разрабатывать, потому что они требуют компиляции (и, возможно, полной IDE). Их трудно поддерживать, потому что они составлены. Вы можете использовать свойства для улучшения удобства сопровождения, но это немного больше программирования.
Java-программы отлично подходят для сложных вещей. Если у вас много текстовых подстановок или вычислений, Java работает лучше. Java - это правильный язык с множеством функций для выполнения многих задач.
У вас есть золотая середина: гибкость сценариев, сложность полных языков программирования. Такие инструменты, как Groovy или Python являются
«Динамические» языки - их очень легко писать и поддерживать, но они также являются полноценными языками программирования, а не только оболочкой.
Если ваш сценарий включает какие-либо текстовые манипуляции или вычисления, вы можете рассмотреть Groovy или Python вместо оболочки или Java.