Respostas:
Bem, foi mais fácil do que eu pensava (bem, na verdade não, digamos o mais fácil que deveria ser):
gem list rhc --remote --all
Que retorna:
*** 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)
gem list -ra --pre passenger
(-ra == --remote --all)
zsh
análise mais avançada, podem capturar o regex fornecido dessa maneira. Para ser mais seguro (se colocando sth como que em um script ou README) é colocá-lo em uma corda de modo que temos a certeza que passá-lo 1-1, ou seja, gem list '^rhc$'
etc
zsh
fiz este +1 por sua ajuda!
--prerelease
para ver versões beta
De acordo com o Guia do RubyGem, você deve usar a search
palavra - chave. Portanto, o comando pode ser:
gem search rhc --all
Se você quiser o nome exato, use:
gem search ^rhc$ --all
Se você deseja incluir versões de pré-lançamento, use --pre
gem search ^rhc$ --pre
E se você estiver usando zsh
adicionar aspas:
gem search '^rhc$' --all
--prerelease
para ver versões beta
Para estender a resposta do @ eyalev, se você quiser uma lista de uma versão por linha, aqui está uma lista:
gem search '^rspec$' --all \
| grep -o '\((.*)\)$' \
| tr -d '() ' \
| tr ',' "\n" \
| sort
0.0.10
0.1.0
0.1.1
# etc.
Para tornar isso um pouco mais reutilizável, você pode escrever algumas funções (perdoe minhas habilidades limitadas do bash):
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.
Experimentar:
gem list [STRING] [options]
Por exemplo:
gem list rhc -r
Ou tente:
gem list -r rhc
( a documentação e o exemplo fornecido parecem contradizer um ao outro - tente os dois )
Veja a documentação:
gem list ^rhc$
e os sinalizadores "--remote" e "--all" podem ser abreviados e combinados paragem list ^rhc$ -ra