Ini sedikit variasi, tetapi solusi PJW tidak cukup berhasil untuk saya:
java -version 2>&1 | head -n 1 | cut -d'"' -f2
potong saja string pada pembatas "
(tanda kutip ganda) dan dapatkan kolom kedua.
- Redirect stderr ke stdout.
- Dapatkan baris pertama
-
Filter nomor versi.
java -version 2>&1 | head -n 1 | awk -F '"' '{print $2}'
Saya sarankan menggunakan grep -i version
untuk memastikan Anda mendapatkan baris yang tepat berisi string versi. Jika Anda menyetel variabel lingkungan JAVA_OPTIONS, openjdk akan mencetak opsi java sebelum mencetak informasi versi. Versi ini mengembalikan 1.6, 1.7 dll.
java -version 2>&1 | grep -i version | cut -d'"' -f2 | cut -d'.' -f1-2