Comment puis-je répertorier toutes les versions d’un bijou disponibles sur un site distant?

J’essaie de trouver toutes les versions disponibles à distance d’un joyau spécifié.

J’ai essayé d’utiliser:

gem list rhc --remote 

Mais ça montre:

 *** REMOTE GEMS *** rhc (0.84.15) rhcp (0.2.18) rhcp_shell (0.2.12) 

Des idées?

Eh bien, c’était plus facile que je pensais (enfin, pas vraiment, disons aussi simple que cela devrait être):

 gem list rhc --remote --all 

Qui retourne:

 *** REMOTE GEMS *** rhc (0.84.15, 0.84.13, 0.83.9, 0.82.18, 0.81.14, 0.80.5, 0.79.5, 0.77.8, 0.75.9, 0.74.6, 0.74.5, 0.73.14, 0.72.29, 0.71.2, 0.69.6, 0.69.3, 0.68.5) rhcp (0.2.18, 0.2.17, 0.2.16, 0.2.15, 0.2.14, 0.1.9, 0.1.8, 0.1.7, 0.1.6, 0.1.5, 0.1.4, 0.1.3, 0.1.2) rhcp_shell (0.2.12, 0.2.11, 0.0.9, 0.0.7, 0.0.6, 0.0.5, 0.0.4, 0.0.3, 0.0.2, 0.0.1) 

Selon le guide de RubyGem, vous devez utiliser le mot-clé de search . Donc, la commande pourrait être:

gem search rhc --all

Si vous voulez le nom exact, utilisez:

gem search ^rhc$ --all

Si vous voulez inclure des versions préliminaires, utilisez --pre

gem search ^rhc$ --pre

Et si vous utilisez zsh add quotes:

gem search '^rhc$' --all

Pour prolonger la réponse de @ eyalev, si vous voulez une liste d’une version par ligne, voici une liste:

 gem search '^rspec$' --all \ | grep -o '\((.*)\)$' \ | tr -d '() ' \ | tr ',' "\n" \ | sort 0.0.10 0.1.0 0.1.1 # etc. 

Pour rendre cela un peu plus réutilisable, vous pourriez écrire certaines fonctions (pardonnez mes compétences limitées):

 function extract_gem_versions() { echo "$1" \ | grep -o '\((.*)\)$' \ | tr -d '() ' \ | tr ',' "\n"; } function gem_versions() { local gem_name="$1"; local pattern="^${gem_name}$"; local vers_str="$(gem search ${pattern} --all)"; extract_gem_versions "$vers_str"; } gem_versions rspec | sort 0.0.10 0.1.0 0.1.1 # etc. 

Essayer:

 gem list [STRING] [options] 

Par exemple:

 gem list rhc -r 

Ou essayez:

 gem list -r rhc 

( la documentation et l’exemple fourni semblent se contredire – essayez les deux )


Voir la documentation:

http://docs.rubygems.org/read/chapter/10#page34