Мне нужно извлечь версию MySQL в скрипте Bash на CentOS 6 для проверки минимальных требований.
Пример:
# mysql -V
mysql Ver 14.14 Distrib 5.5.43, for Linux (x86_64) using readline 5.1
# mysql -V
mysql Ver 14.14 Distrib 5.6.24, for Linux (x86_64) using EditLine wrapper
Стоит ли использовать что-то вроде mysql -V| grep ...
?
решение1
[!520]#
mysql --version|awk '{ print $5 }'|awk -F\, '{ print $1 }'
Выходные данные:
5.5.41
решение2
Для двух приведенных выше примеров, если вам нужна строка «14.14»:
mysql -V | awk '{print $3}'
Если вам нужна строка "5.xx":
mysql -V | awk '{print $5}'
Я не могу гарантировать, что строки будут в том же формате в основных версиях. Кроме того, это, вероятно, можно было бы сделать с помощью sed
и некоторых умных регулярных выражений.
Если вам нужна проверка установленных RPM, то вы можете сделать следующее:
rpm -qi mysql | grep Version | awk '{print $3}'