J'écris un script Bash pour stocker le numéro de version de Virtualbox, mais ne peut pas réussir.
Mon script est:
#!/bin/bash
installed_virtualbox=$(virtualbox --version) # --version this is what I want to change
J'ai essayé
virtualbox --version
virtualbox -v
virtualbox -V
virtualbox --Version
tout semble ouvrir la virtualbox au lieu de la sortie.virtualbox --help
donne le numéro de version, mais la sortie est trop longue pour être stockée dans une variable et utilisée plus tard.
Pour imprimer ou afficher la version actuelle de VirtualBox , utilisez la commande ci-dessous:
vboxmanage --version
qui imprimera alors la version actuelle comme on le voit ci-dessous;
Reportez-vous à 8.2. Aperçu des commandes sur le site officiel de VirtualBox pour plus d'informations.
Pour imprimer la version à l'aide du script, voir ci-dessous:
#!/bin/bash
echo $(vboxmanage --version)
J'espère que ça aide.
Tu peux essayer ça,
virtualbox --help | head -n 1 | awk '{print $NF}'
ou
$ echo $(virtualbox --help | head -n 1 | awk '{print $NF}')
4.3.6
Comment ça marche
étape -1
virtualbox --help
vous donne une longue sortie en disant beaucoup d'options, etc. Mais ses toutes premières lignes sont comme,
Oracle VM VirtualBox Manager 4.3.6
(C) 2005-2013 Oracle Corporation
Tous les droits sont réservés.
...
étape -2
| head -n 1
|
s'appelle pipe. Il a une grande application en ligne de commande. Il passe l'expression entière à la commande suivante head
. head -n 1
affiche uniquement la première ligne. voir man head
pour plus d'informations. A ce stade, la sortie est seulement
Oracle VM VirtualBox Manager 4.3.6
étape -
| awk '{print $NF}'
Là encore, les éléments restants sont passés à awk
. À cette étape, awk
voit la ligne entière comme une combinaison de quelques champs séparés par un espace et n'imprime que le dernier champ de l'expression ci-dessus. Donc, vous obtenez la version seulement. Voir man awk
pour plus d'informations.
vous pourriez connaître la version du paquet installé avec dpkg et grep avec la tuyauterie
dpkg -l | grep virtualbox | awk '{print $3}'
avi @ avi-IdeaPad-Z500: ~ $ virtualbox --help Oracle VM VirtualBox Manager 4.3.6
Alors lancez la commande ci-dessous,
virtualbox --help | awk '/Oracle/{ print $5 }'
Sortie:
4.3.6
awk '/Oracle/{ print $5 }'
Recherche la ligne qui consiste en Word Oracle
name__. Si oui, la commande sélectionne la cinquième colonne de cette ligne et la redirige vers la sortie standard. Si aucun mot de ce type n'était présent sur aucune ligne, il n'affiche rien.