java -version
é enviado para o erro padrão, portanto, é necessário redirecionar isso:
java -version 2>&1 | head -1 | awk '{print $NF}' | sed 's/"//g'
Você pode fazer isso com uma única invocação do AWK:
java -version 2>&1 | awk 'NR==1 {gsub("\"", "", $NF); print $NF}'