Проблема в том, что использование экранной команды 'exec' не запускает оболочку. 'cd' - это встроенная оболочка, поэтому вам нужна оболочка для нее. Кроме того, вам нужна оболочка, которая продолжает работать, чтобы экран не закрывался.
Вы можете использовать опцию -X для отображения на экране, чтобы отправлять команды в сеанс работающего экрана, и команду 'stuff', чтобы отправлять нажатия клавиш в текущее окно. Попробуйте это:
screen -dmS new_screen sh
screen -S new_screen -X stuff "cd /dir
"
screen -S new_screen -X stuff "java -version
"
Да, для выполнения команд необходимо поместить кавычки в следующую строку.