2017-09-02 4 views
1

J'ai installé des paquets GNU sur mon macOS Sierra, qui comprennent bash, coreutils, sed, which, etc. Maintenant je dois vérifier toutes les informations de version de paquets ont le même nom, à savoir bash:Comment obtenir toutes les informations de version après `which -a`?

$ which -a bash 
/usr/local/bin/bash 
/bin/bash 

J'utilise $(which -a bash | xargs -I % echo % "--version") pour vouloir obtenir deux informations de version à la fois, mais il suffit d'afficher la première version de bash, qui équivaut à /usr/local/bin/bash --version.

Y a-t-il un moyen de le faire? Merci d'avance.

+1

'qui -a bash | tandis que lire bin; faire "$ {bin}" --version; done' – hek2mgl

+0

Cela fonctionne aussi. Je vous remercie. Mais je pense '| sh' est plus facile. – liyang

Répondre

1

Append | sh:

which -a bash | xargs -I % echo % "--version" | sh 
+0

Je reçois seulement 1 version de bash avec ceci. Ne devrait pas y avoir 2? – pedromss

+0

@pedromss: Affiche la sortie de: 'laquelle -a bash' – Cyrus

+0

16:10:34>' qui -a bash' ==> '/ usr/local/bin/bash' et '/bin/bash' – pedromss