Как проверить версию Virtualbox из CLI

Я пишу сценарий Bash для хранения номера версии Virtualbox , но не удается.

Мой сценарий:

#!/bin/bash
installed_virtualbox=$(virtualbox --version) # --version this is what I want to change

Я пытался

virtualbox --version
virtualbox -v
virtualbox -V
virtualbox --Version

, кажется, все открывают виртуальную коробку вместо вывода.
virtualbox --help дает номер версии, но вывод слишком длинный, чтобы хранить его в переменной и использовать позже.

65
задан 14 February 2014 в 20:46

4 ответа

Чтобы распечатать или просмотреть текущую версию VirtualBox , используйте следующую команду:

vboxmanage --version

, которая затем напечатает текущую версию, как показано ниже;

enter image description here

См. 8.2. Обзор команд на официальном сайте VirtualBox для получения дополнительной информации.


Чтобы напечатать версию с использованием сценария, см. ниже:

#!/bin/bash
echo $(vboxmanage --version)

Надеюсь, это поможет.

0
ответ дан 14 February 2014 в 20:46

Вы можете попробовать это,

virtualbox --help | head -n 1 | awk '{print $NF}'

или

$ echo $(virtualbox --help | head -n 1 | awk '{print $NF}')
4.3.6

Как это работает

Шаг -1

virtualbox --help

дает длинный вывод с множеством опций и т. Д. Но самые первые строки похожи на

Oracle VM VirtualBox Manager 4.3.6
(C) 2005-2013 Oracle Corporation
Все права защищены.
...

Шаг -2

| head -n 1

| называется труба. У этого есть большое применение в командной строке. Он передает все выражение следующей команде head. head -n 1 печатает только первую строку. см. man head для получения дополнительной информации. На этом этапе выводом является только

Oracle VM VirtualBox Manager 4.3.6

Шаг -3

| awk '{print $NF}'

Опять оставшиеся вещи передаются в awk. На этом этапе awk рассматривает всю строку как комбинации нескольких полей, разделенных пробелом, и печатает только последнее поле вышеприведенного выражения. Таким образом, вы получаете только версию. Подробнее см. man awk.

0
ответ дан 14 February 2014 в 20:46

вы можете узнать версию пакета, установленного с dpkg и grep с конвейером

dpkg -l | grep virtualbox | awk '{print $3}'
0
ответ дан 14 February 2014 в 20:46
avi@avi-IdeaPad-Z500:~$ virtualbox --help
Oracle VM VirtualBox Manager 4.3.6

Запустите приведенную ниже команду:

virtualbox --help | awk '/Oracle/{ print $5 }'

Вывод:

4.3.6

awk '/Oracle/{ print $5 }'

Поиск строки, состоящей из слова Oracle. Если да, то команда выбирает пятый столбец в этой строке и перенаправляет его на стандартный вывод. Если такого слова не было в каких-либо строках, то ничего не отображается.

0
ответ дан 14 February 2014 в 20:46

Другие вопросы по тегам:

Похожие вопросы: