Скрипт оболочки для проверки, если версия jdk новее 1.8 - PullRequest
0 голосов
/ 23 апреля 2020

В скрипте я хочу проверить, установлен ли java и является ли он новее, чем 1.8.

java -version 2>$1 >/dev/null | egrep "\S+\s+version" | awk '{print substr($3,0,5)}' | tr -d '"'

Я думаю, результаты могут быть такими:

1.8.0_225
11.0.2
1.6.1_223

, чтобы сделать его сопоставимым, было бы хорошо сопоставить эти значения с \d+\.\d+:

1.80225
11.02
1.61223

Это можно сделать, заменив все, что не является ди git, ничем, кроме первой точки.

1 Ответ

0 голосов
/ 23 апреля 2020

Вы можете использовать awk следующим образом:

java -version 2>&1 | awk  -F[\"._] '/version/{print $2"."$3$4$5$6$7}'

Используя sed:

java -version 2>&1 | sed -Ee 's/.*"(.*)"$/\1/g;s/^([0-9]+\.[0-9]+\.)([0-9]+)[^0-9]/\1\2/g;q'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...