como capturar a versão java na máquina linux

0

como capturar a versão java na máquina redhat linux

tentamos isso:

java -version | head -1 | awk '{print $NF}' | sed 's/"//g'

mas temos

openjdk version "1.8.0_65"
OpenJDK Runtime Environment (build 1.8.0_65-b17)
OpenJDK 64-Bit Server VM (build 25.65-b01, mixed mode)

enquanto a saída esperada deve ser

1.8.0_65
    
por yael 26.04.2018 / 16:21

1 resposta

3

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}'
    
por 26.04.2018 / 16:24