CLI에서 virtualbox 버전을 확인하는 방법


65

Virtualbox 의 버전 번호를 저장하는 Bash 스크립트를 작성 중이지만 성공할 수 없습니다.

내 스크립트는 다음과 같습니다

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

나는 시도했다

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

모두 출력 대신 가상 상자를 여는 것으로 보입니다.
virtualbox --help버전 번호를 제공하지만 출력이 너무 길어 변수에 저장하고 나중에 사용할 수 없습니다.

답변:


107

현재 VirtualBox 버전 을 인쇄하거나 보려면 아래 명령을 사용해야합니다.

vboxmanage --version

그러면 아래와 같이 현재 버전이 인쇄됩니다.

여기에 이미지 설명을 입력하십시오

8.2를 참조하십시오 . 자세한 내용은 공식 VirtualBox 사이트의 명령 개요 .


스크립트를 사용하여 버전을 인쇄하려면 아래를 참조하십시오.

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

도움이 되길 바랍니다.


1
echo $(vboxmanage --version | head -n 1 | awk '{print $NF}')echo $(vboxmanage --version)의 차이점은 무엇입니까? 그들은 같지 않습니까?
souravc

@souravc-여기서는 --version한 줄과 한 필드 만 출력하는 을 사용 합니다. 따라서 headawk트림을 사용하는 것은 불필요하며 동일한 결과를 출력합니다. 아래 답변에서 사용 --help대신의 --version경우있는, head그리고 awk를 통해 발견 된 버전으로, 트리밍이 참으로 필요합니다 ...하지만 당신은 여전히 덜 정확한 정보를 얻을 --help에만 #입니다. #. # 대 --version있는이 #을 얻을 수 있습니다. #. # r # (개정 정보가있는 버전).
DreadPirateShawn

@DreadPirateShawn 당신은 지금 정확합니다 불필요합니다. 그 당시에는 vboxmanage다른 정보와 함께 제공되었으므로 제안했습니다. 수정 사항 , OP가 내 제안을 수락 함을 수 있습니다 . 내가 왜 일을 복잡하게 만들
까요

@souravc-Ahhh ... 상황이 상황을 더 명확하게 만드는 방법이 재미 있습니다. :-P 그래서 ... 훌륭한 팁. :-)
DreadPirateShawn

VBox 5.0부터 vbox-img --version버전도 인쇄 할 수 있습니다.
kenorb

7

당신은 이것을 시도 할 수 있습니다

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을 참조하십시오 .


명령을 분석하고 각 부분의 기능을 설명 할 수 있다면 좋을 것입니다.
jobin 2012

@Jobin plz 내 편집 내용을 참조하십시오.
souravc

2

dpkg와 grep이 설치된 패키지 버전을 알 수 있습니다.

dpkg -l | grep virtualbox | awk '{print $3}'

파이프로 연결된 각 명령은 무엇을하는지 자세히 설명하십시오.
jobin 2012

1
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. 그렇다면 명령이 해당 행의 다섯 번째 열을 선택하여 표준 출력으로 리디렉션합니다. 어떤 행에도 해당 단어가 없으면 아무 것도 표시되지 않습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.